我正在尝试使用其他服务器登录sencha。 以下代码不起作用,我不知道为什么。 始终出现相同的错误:“未捕获的ReferenceError:未在控制台中定义回调”。
Ext.util.JSONP.request({
url: 'http://myserver/api/v1/login-jsonp2/1',
callback: function(data) {
if (data) {
console.log(data.results);
console.log('SUCCESS');
} else {
console.log('ERROR');
}
}
});
返回: 回调({ “ID”:10 “用户名”: “e002102”, “姓名”: “罗伯特·”, “姓”: “穆萨利”})
我也尝试将返回更改为: { “ID”:10 “用户名”: “e002102”, “姓名”: “罗伯特·”, “姓”: “穆萨利”} 但是我收到了另一个错误:“意外令牌”
响应的内容类型是text / javascript 我还在index.html中添加了标记
< script src="http://myserver/api/v1/login-jsonp2/1?callback=callback"></script>
和
< script src="http://myserver/api/v1/login-jsonp2/1?callback=callback1"></script>
出了什么问题?!?!
答案 0 :(得分:2)
Ext.data.JSONP.request将发送一个HTTP参数,其中包含一个自动生成的&#34;回调&#34;参数对每个请求都是唯一的。
因此,您的服务器需要在每个请求上更改它(请参阅我链接的API文档中的PHP示例)。
callback1({ "foo" : "bar" });
callback2({ "foo" : "bar" });
callback3({ "foo" : "bar" });