【发布时间】:2017-06-01 05:53:48
【问题描述】:
我正在使用平均值来建立一个网站。但是在测试的时候,就出现了问题
主线程上的同步 XMLHttpRequest 已被弃用,因为它会对最终用户的体验产生不利影响。 ------ jquery.js:9425
但是我没有在我的项目中使用 XMLHttpRequest。而且我发出的get请求(见下文)没有响应,服务器甚至只记录第一个console.log。我不知道他们是否有关系。谢谢。
router.get('/login', function (req, res, next){
User.find({email: req.query.email}, function (err, user){
console.log(req.query.email);
if (err) {
return next(err);
} else if (!user) {
return res.json({message: 'This email is not registered yet.'});
} else {
if (req.query.password != user.password) {
return res.json({message: 'Password is not correct!'});
} else {
console.log(req.query.email);
console.log(user);
console.log(user.username);
var token = auth.signToken(user._id, user.username, user.role);
console.log(token);
res.json({token: token, user: user});
};
};
});
});
【问题讨论】:
-
要么 1. 这不是警告所涉及的代码(请注意,它所涉及的任何代码都是使用 jQuery 发出请求,而后者又使用 XMLHttpRequest)。或者 2. 无论
router是什么,它在幕后使用 XMLHttpRequest(通过 jQuery),并且在某个地方,你告诉router使该请求同步(或者它是一个糟糕的库,默认为它,这似乎不太可能) . -
要了解此请求的来源,请关注此answer
-
是 jquery.js 中的 xhr.open() 导致问题,当它试图打开 index.html 中的一些引用文件时,异步将设置为 false,但是应该我愿意? @RoryMcCrossan
-
我修好了,发现jquery.js文件中async默认为false,我改成true,问题就解决了。
标签: javascript jquery http get-request