Javascript Express抛出类型错误:无法读取属性';app&x27;未定义的
我有一个运行CommonFrameworkExpress的nodejs服务器。我最近注意到,当我从我的服务器发出请求时,我会在看似随机的时间出现这个错误,例如,如果我发出两次请求,错误通常只会在第一次请求时发生,而不会在第二次请求时发生。我很难确定是什么导致了这个错误,因为我经常一次编写代码,然后再测试它。以下是完整的错误:Javascript Express抛出类型错误:无法读取属性';app&x27;未定义的,javascript,node.js,express,Javascript,Node.js,Express,我有一个运行CommonFrameworkExpress的nodejs服务器。我最近注意到,当我从我的服务器发出请求时,我会在看似随机的时间出现这个错误,例如,如果我发出两次请求,错误通常只会在第一次请求时发生,而不会在第二次请求时发生。我很难确定是什么导致了这个错误,因为我经常一次编写代码,然后再测试它。以下是完整的错误: TypeError: Cannot read property 'app' of undefined at json (/home/user/Desktop/pro
TypeError: Cannot read property 'app' of undefined
at json (/home/user/Desktop/project/node_modules/express/lib/response.js:256:18)
at process._tickCallback (internal/process/next_tick.js:68:7) 'Unhandled Rejection at Promise' Promise {
<rejected> TypeError: Cannot read property 'app' of undefined
at json (/home/user/Desktop/project/node_modules/express/lib/response.js:256:18)
at process._tickCallback (internal/process/next_tick.js:68:7) }
如果我还需要什么,请问我。我试图在代码中包含与“app”一词相关的所有引用,但这可能还不够
编辑:我感谢大家的帮助,但我提供的代码不是为了工作,它只是我导入的一个示例,这是express的一个错误,我只是想找出什么样的行为会导致它。抱歉搞混了。//对我来说很好。删除您的本地进口。这个很好
const express = require('express');
const helmet = require('helmet');
const cors = require('cors');
const bodyParser = require('body-parser')
app = express();
app.use(helmet());
app.use(cors());
app.use(bodyParser.urlencoded({
extended: false
}));
app.use(bodyParser.json());
app.set('trust proxy', true);
//set port and listen on it
app.listen(5000, () => console.log("Server running on port 5000"));
要使代码正常工作,必须添加
const express = require('express'),
user = require('./routers/User.js'),
helmet = require('helmet')
----> const app = express();
or helmet = require('helmet'), <-----
app = express()
const express=require('express'),
user=require('./routers/user.js'),
头盔=需要(“头盔”)
---->常量app=express();
或者helmet=require('helmet'),您很可能在“helmet=require('helmet')之后缺少逗号
对不起,这是问题中的疏忽,不是实际错误。你能检查一下我编辑的答案,看看它是否解决了问题吗
const express = require('express'),
user = require('./routers/User.js'),
helmet = require('helmet')
----> const app = express();
or helmet = require('helmet'), <-----
app = express()
const express = require('express'),
user = require('./routers/User.js'),
helmet = require('helmet'),
app = express();
app.use(helmet());
app.use(cors());
app.use(bodyParser.urlencoded({
extended: false
}));
app.use(bodyParser.json());
app.set('trust proxy', true);
//map router files to respective urls
//these are stored in a directory and set above, these contain all of the handlers for each of my routes
app.use('/user', user);
//set port and listen on it
app.listen(5000, () => console.log("Server running on port 5000"));