我在尝试Ajax请求的项目中收到错误
[Deprecation]主线程上的同步XMLHttpRequest是 由于其对最终用户的不利影响而被弃用 经验。
function getReviews() {
var toReturn = $.ajax({
url: 'API/reviews.json',
async: false
}).responseJSON;
return toReturn;
}
我想知道是否有不同的方法来写这个没有错误
答案 0 :(得分:5)
同步XMLHttpRequest非常糟糕,因为它们在等待来自服务器的响应时阻止整个应用程序,因此您永远不应该使用它们。
要使您的请求异步删除async
选项并指定回调:
function getReviews(cb) {
$.ajax({
url: 'API/reviews.json'
}).done(cb);
}
getReviews(function(data) {
// Access your data here
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>