【发布时间】:2016-01-29 14:52:22
【问题描述】:
parse.com 宣布他们将在明年关闭,这是一场噩梦。现在我正在尝试使用MongoDB 测试他们建议的解决方案。问题是,我遇到了javascript 错误。我在parse-servir-github 得到了 git
,添加我的应用设置并运行node index.js。现在,我在尝试访问本地服务器时遇到了错误:
parse-server-example 在端口 1337 上运行。 /Users/ferrojr/DeveloperTools/parse-server/node_modules/express/lib/application.js:120 this._router.handle(req, res, function(err) { ^
TypeError:无法读取未定义的属性“句柄” 在 Function.app.handle (/Users/ferrojr/DeveloperTools/parse-server/node_modules/express/lib/application.js:120:15) 在 Server.app (/Users/ferrojr/DeveloperTools/parse-server/node_modules/express/lib/express.js:28:9) 在 emitTwo (events.js:87:13) 在 Server.emit (events.js:172:7) 在 HTTPParser.parserOnIncoming [as onIncoming] (_http_server.js:528:12) 在 HTTPParser.parserOnHeadersComplete (_http_common.js:88:23)
这是application.js中的代码。
app.handle = function(req, res, done) {
var env = this.get('env');
this._router.handle(req, res, function(err) {
if (done) {
return done(err);
}
// unhandled error
if (err) {
// default to 500
if (res.statusCode < 400) res.statusCode = 500;
debug('default %s', res.statusCode);
// respect err.status
if (err.status) res.statusCode = err.status;
// production gets a basic error message
var msg = 'production' == env
? http.STATUS_CODES[res.statusCode]
: err.stack || err.toString();
msg = escapeHtml(msg);
// log to stderr in a non-test env
if ('test' != env) console.error(err.stack || err.toString());
if (res.headersSent) return req.socket.destroy();
res.setHeader('Content-Type', 'text/html');
res.setHeader('Content-Length', Buffer.byteLength(msg));
if ('HEAD' == req.method) return res.end();
res.end(msg);
return;
}
// 404
debug('default 404');
res.statusCode = 404;
res.setHeader('Content-Type', 'text/html');
if ('HEAD' == req.method) return res.end();
res.end('Cannot ' + escapeHtml(req.method) + ' ' + escapeHtml(req.originalUrl) + '\n');
});
};
无论如何,我是 iOS developer,没有使用 node.js 的经验,我只是想按照 parse.com 教程并设置我的数据库以在本地使用 mongoDB 和 parse server。
非常感谢任何帮助。
【问题讨论】:
标签: javascript node.js mongodb parse-platform parse-server