我試圖從req.params讀取參數值,但以不同的方式(我試圖做一個API中的RESTify) 。我不能從req.params中的RESTify閱讀PARAMS值(節點JS)
首先我讀了req.params可用的密鑰,比如;
var requestData = Object.keys(request.params);
而且比我遍歷每個鍵,嘗試獲取它的價值。下面是代碼;
for(i = 1; i < requestData.length; i++) {
keyValue = requestData[i];
console.log(request.params.keyValue);
}
但輸出顯示爲UNDEFINED。
原因:我想讀取參數,因此,我不需要知道每個參數的名稱。
下面是完整的代碼:
var restify = require('restify');
var assert = require('assert');
var server = restify.createServer();
var client = restify.createStringClient({
url: 'http://example.com'
});
function onRequest(request, response, next)
{
console.log(request.params);
var requestData = Object.keys(request.params);
var customJsonString = '';
var keyValue = '';
for(i = 1; i < requestData.length; i++) {
keyValue = requestData[i];
console.log(request.params.keyValue);
customJsonString += "" + requestData[i] + " : " + requestData[i] + ", ";
}
console.log(customJsonString);
}
function start()
{
server.use(restify.fullResponse()).use(restify.bodyParser());
server.get(/^\/(.*)/, onRequest);
server.post(/^\/(.*)/, onRequest);
server.listen(8888);
console.log("Server has started.");
}
exports.start = start;
我會很感激有關此問題的任何幫助。
你是男人。它爲我工作,我也理解你的觀點。而且,是的,我知道javascript數組從索引0開始,但我需要從索引1循環,以便我可以輕鬆地跳過索引0上的內容:) – Capri82