javascript - Ext.util.JSONP.request 始终返回 "Uncaught ReferenceError: callback is not defined"

标签 javascript extjs sencha-touch jsonp

我正在尝试使用另一台服务器登录 sencha。 下面的代码不起作用,我不知道为什么。 控制台中始终出现相同的错误:“Uncaught 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","名字":"罗伯托","姓氏":"穆萨利"} 但我收到另一个错误:“意外的 token ”

响应的内容类型是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>

怎么了?!?!

最佳答案

Ext.data.JSONP.request将发送一个带有自动生成的“回调”参数的 HTTP 参数,该参数对于每个请求都是唯一的。

因此,您的服务器需要根据每个请求更改它(请参阅我链接的 API 文档中的 PHP 示例)。

    callback1({ "foo" : "bar" });
    callback2({ "foo" : "bar" });
    callback3({ "foo" : "bar" });

关于javascript - Ext.util.JSONP.request 始终返回 "Uncaught ReferenceError: callback is not defined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29153939/

相关文章:

javascript - jQuery 脚本不适用于更高版本

javascript - 如果导航栏具有固定高度,为什么 Bootstrap 下拉菜单不起作用?

javascript - 如何在 XTemplate 中调用函数 (itemTpl)

javascript - 加载后更新 Sencha Touch 中的列表项

c# - 在 c# asp.net 中执行 javascript 后抓取网页

php - 为 ajax 调用设置 xmlhttpRequest.setRequestHeader?

javascript - 使用 Ext 解析简单的 JSON 给出 SyntaxError : Unexpected token ILLEGAL

extjs - 无法在 extjs 中保持结构的 100% 宽度和高度

javascript - Ext.apply 与简单地在目标上设置值有什么区别?

sencha-touch - 将 Sencha Architect 项目从 Sencha Touch v2.0.x 更新到 Sencha Touch 2.1.x