【发布时间】:2017-09-07 02:00:22
【问题描述】:
我是后端编程的新手,在以用户身份登录时遇到 GET 请求检索数据的问题。
我的本地主机服务器上的数据正常,状态码为 200,但相同的 GET 请求不会从 aws EC2 上的服务器返回数据。
我一直在寻找解决方案,但似乎我错过了一些我无法理解的重要信息。
localhost dev server ec2 aws server
router.get('/', function (req, res) {
if (req.session.userId) {
return res.sendFile(path.join(__dirname + '/../public/index.html'))
}
return res.sendFile(path.join(__dirname + '/../public/login.html'))
})
router.get('/data', function (req, res) {
User.findById(req.session.userId)
.exec(function (error, user) {
res.send(user)
}
);
})
只有 /data 请求表现得很奇怪。
【问题讨论】:
-
在ec2截图中,错误是:
Uncaught TypeError: Cannot read property 'map' of undefinedinapp.jsline 41。你能提供那个代码吗? -
别担心,这无关。这是其他一些前端问题
-
对于 ec2 服务器,
/data响应为304 Modified。这很正常——GET /data请求之前发送过,重新验证后,服务器说“它没有改变,只是使用浏览器中的缓存”。你能解释一下“没有得到服务器的响应”是什么意思吗? -
如果你看第一张图片,我收到了一些数据,但第二张图片没有。这就是问题
-
好吧,我相信数据是返回的(从缓存中)。它没有打印在控制台中,因为抛出了一个未捕获的错误,这导致前端进入不可预测的状态。你能修复那个错误并重试吗?
标签: node.js http express amazon-ec2