當I型somedomain.com/some_api_url?_var1=1
到瀏覽器,該響應是{"1":"descriptive string"}
,其中1
是一個數字索引變量,其值的範圍可以從1
到n
。而「描述性字符串」就是一些總結了索引代表的文字。集成JSON響應轉換的Node.js/Express.js響應
我怎樣才能從somedomain.com/some_api_url?_var1=1
API網址的JSON response
集成到下面的非常簡單Node.js
和Express.js
例子嗎?
出於測試目的,當用戶從其Web瀏覽器請求http : // localhost : 3000
時,下面顯示的非常簡單的app.js
返回「Hello World」。需要什麼具體改變如下的代碼來進行,使網頁瀏覽器響應請求用:
Index is: 1
Description is: descriptive string
,而不是與「Hello World」的迴應?
這裏是app.js
當前代碼:
var express = require('express');
var http = require('http');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function() {
console.log('Example app listening on port 3000!');
});
這裏是我當前的嘗試,這將導致在控制檯打印Got a response: undefined
,並與瀏覽器剩下的就掛了,因爲沒有返回給瀏覽器作爲response
:
var express = require('express');
var http = require('http');
var app = express();
app.get('/', function (req, res) {
var url = 'somedomain.com/some_api_url?_var1=1';
http.get(url, function(res){
var body = '';
res.on('data', function(chunk){
body += chunk;
});
res.on('end', function(){
var fbResponse = JSON.parse(body);
console.log("Got a response: ", fbResponse.picture);
});
}).on('error', function(e){
console.log("Got an error: ", e);
});
});
app.listen(3000, function() {
console.log('Example app listening on port 3000!');
});
的get
示例代碼改編自the example at this link。
您的代碼在瀏覽器中打印'{「1」:「描述性字符串」}'並在控制檯中打印出'響應:undefined'。 OP詢問如何格式化JSON,以便將其轉換爲OP中顯示的簡單HTML輸出。如何改變你的代碼來完成OP的既定目標? – FarmHand
的OP請求瀏覽器打印,在兩行:'指數是:1所 描述爲:描述性string' – FarmHand
@FarmHand這意味着,不存在響應數據沒有畫面屬性。 –