Javascript 类型错误:对象#<;服务器响应>;没有方法';发送';
我一直在开发一个Express应用程序,刚开始出现一个非常奇怪的错误,说Javascript 类型错误:对象#<;服务器响应>;没有方法';发送';,javascript,node.js,express,Javascript,Node.js,Express,我一直在开发一个Express应用程序,刚开始出现一个非常奇怪的错误,说TypeError:Object.#没有方法“send”。它始于我试图通过Express提供的路由器为我的应用程序设置一些路由。我在谷歌上搜索了一下,发现其他人得到了TypeError:Object#has no method u (填空)不是没有使用Express,就是他们对路由器做了一些奇怪的事情。因此,我创建了一个名为app test.js的新应用程序文件,并删除了所有无关的代码,包括路由器。然而,我仍然得到同样的错误
TypeError:Object.#没有方法“send”
。它始于我试图通过Express提供的路由器为我的应用程序设置一些路由。我在谷歌上搜索了一下,发现其他人得到了TypeError:Object#has no method u
(填空)不是没有使用Express,就是他们对路由器做了一些奇怪的事情。因此,我创建了一个名为app test.js
的新应用程序文件,并删除了所有无关的代码,包括路由器。然而,我仍然得到同样的错误。下面是我在试图解决问题时的设置:
server.js
var app = require("./app-test");
app.set("port", process.env.PORT || 8000);
var server = app.listen(app.get("port"), function () {
var host = server.address().address;
var port = server.address().port;
console.log("Example app listening at http://%s:%s", host, port)
});
module.exports.app = app;
module.exports.server = server;
var express = require('express'),
app = express(),
path = require('path');
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.get('/testing', function(req, res) {
res.send('Hello World!');
});
module.exports = app;
app test.js
var app = require("./app-test");
app.set("port", process.env.PORT || 8000);
var server = app.listen(app.get("port"), function () {
var host = server.address().address;
var port = server.address().port;
console.log("Example app listening at http://%s:%s", host, port)
});
module.exports.app = app;
module.exports.server = server;
var express = require('express'),
app = express(),
path = require('path');
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.get('/testing', function(req, res) {
res.send('Hello World!');
});
module.exports = app;
我知道Express构建在Node.js的http的ServerResponse对象上。因此,即使未设置Express,某些方法(如.end()
)仍然可以工作。然而,这个问题真正奇怪的地方在于Express的.render()
方法仍然可以正常工作
我完全被这件事难住了。任何帮助都将不胜感激。为了解决这个问题,我通过
npm install重新安装了Express,它解决了这个问题。我猜我在重构过程中碰到了一个文件,但我没有意识到。你可能弄乱了express模块,或者是因为环境问题,因为这对我来说很好。也许只需重新安装express,看看会发生什么哇。这就成功了。我一定是在重构时意外地碰到了一个Express文件。掌心。非常感谢你的帮助!