簡體   English   中英

Node.JS無法調用在本地主機上不同端口上運行的服務

[英]Node.JS Unable to call a service running on localhost on different port

我想做的是,我的應用程序在端口3030的localhost上運行,我已經編寫了此代碼

var request = require('request');

request("http://127.0.0.1:3000/showdb", function (error, response, body) {
    if(error)
        console.log("ERROR IS :"+error);

    if (!error && response.statusCode == 200) {
        console.log("body"+body) // Print the google web page.
        res.send(body);
    }
})

所以我在本地主機上調用另一個在端口3000上運行的應用程序服務(本地主機的默認IP為127.0.0.1)。 但是,此請求始終無法正常工作,並且錯誤輸出“錯誤:解析錯誤”。 我的端口3030的服務已成功調用,但在該服務中從未調用該請求。 任何幫助將不勝感激。

這是此服務返回的傑森(“ / showdb”)

結果:[{名稱:“ bridgevine”,sizeOnDisk:486539264,空:false},{名稱:“ crud”,sizeOnDisk:218103808,空:false},{名稱:“ exascaleDb”,sizeOnDisk:486539264,空:false} ,{名稱:“ local”,sizeOnDisk:83886080,空:false},{名稱:“ mydb”,sizeOnDisk:218103808,空:false},{名稱:“ test”,sizeOnDisk:218103808,空:false},{名稱:“ winedb”,sizeOnDisk:218103808,空:false}]

我懷疑解析錯誤發生在以下任一行中:

    console.log("body"+body) // Print the google web page.
    res.send(body);

評論一個或另一個。 將正文包裝在JSON.stringify(body)中。 如果此方法修復,則意味着3000服務器正在發送JSON,但您的行為就像是文本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM