【发布时间】:2016-07-03 09:02:34
【问题描述】:
我在 http://blog.openlucius.com/en/blog/headless-drupal-nodejs-part-33-express-js-and-drupal-api-integration 学习无头 Drupal 教程,但我的经验是在 Drupal 方面而不是在 Node 方面,所以现在有些东西坏了,我不知道如何修复。
启动应用时出现错误:
/Library/WebServer/Documents/uno-fe/hellotest.js:23
blogsdata_all.blogs.forEach(function(item){
^
TypeError: Cannot read property 'forEach' of undefined
at Request._callback (/Library/WebServer/Documents/uno-fe/hellotest.js:23:24)
at Request.self.callback (/Library/WebServer/Documents/uno-fe/node_modules/request/request.js:200:22)
at emitTwo (events.js:87:13)
at Request.emit (events.js:172:7)
at Request.<anonymous> (/Library/WebServer/Documents/uno-fe/node_modules/request/request.js:1067:10)
at emitOne (events.js:82:20)
at Request.emit (events.js:169:7)
at IncomingMessage.<anonymous> (/Library/WebServer/Documents/uno-fe/node_modules/request/request.js:988:12)
at emitNone (events.js:72:20)
at IncomingMessage.emit (events.js:166:7)
我的 hellotest.js 看起来像:
var express = require('express');
var app = express();
var routes = require('./routes/index');
var request = require('request');
var blogsurlall = "http://www.pickingorganic.org/blogsexportall";
app.set('view engine','ejs');
var server = app.listen (2000, function(){
console.log('Waiting for you on port 2000');
});
request({
url:blogsurlall,
json:true
}, function(error, response, body){
if (!error && response.statusCode===200) {
blogsdata_all = body;
}
var blogs = [];
blogsdata_all.blogs.forEach(function(item){
blogs = blogs.concat(item);
});
app.locals.blogsdata = blogs;
})
app.use('/', routes);
我假设这与节点请求未正确从“源”站点获取 json 有关,这就是 blogs var 为空的原因。不知道出了什么问题 - 非常感谢任何帮助!
【问题讨论】:
-
检查
error和响应代码。取数据当然有问题
标签: javascript node.js drupal request