我正在使用后端的Express.js在Safari中构建扩展程序。我对服务器进行了一次AJAX调用,服务器响应了一个看似双重回调的名字:
jQuery191026131771644577384_1364321159940 && jQuery191026131771644577384_1364321159940([
{
"foo": "bar"
}
]);
这是AJAX:
$.ajax({
type : "GET",
data : { 'something': 'something more'},
url : "http://localhost:3001/api/login/?callback=?",
dataType: 'jsonp',
success: function(data, text){
console.log(data)
},
error: function (request, status, error) {
console.log("ERROR: " + status + error );
}
});
......这是Express.js:
app.get('/api/login', function(req, res){
res.jsonp([{'foo':'bar'}]);
});
浏览器报告解析错误,可能是因为上面的双回调戳。
线索?
答案 0 :(得分:1)
这不是双回调,它与执行func && func()
相同,它只是在调用函数之前确保函数存在,所以避免抛出异常。
答案 1 :(得分:0)
Hector在评论中说得对:尝试删除回调=?来自网址