我正在使用sencha touch 2.1.x开发一个sencha Web应用程序 此应用程序需要在Web服务器和iOS应用程序上运行,与phonegap 3.1一起打包。
Web服务器版本运行良好,但在执行Ajax POST请求时,我在iOS版本中遇到了一些问题。这是一个示例代码:
var jsonParams =
{
"username": loginParams.user,
"password": loginParams.pwd,
"serverVersion": serverVersion
};
var jsonStr = JSON.stringify(jsonParams);
console.log(jsonStr);
Ext.Ajax.request({
url: internalRoute.LOGIN,
headers: {'Content-Type':'application/json'},
method: 'POST',
scope:this,
params: jsonStr,
success: function(response){
.....
},
failure: function(response) {
.....
},
});
有时这个请求在与phonegap一起打包的iOS版本中运行良好,但随机失败,因为post有效负载是空的。 console.log(jsonStr)
打印正确的数据,但服务器不接收任何数据。我还使用HTTP嗅探器来捕获已发送的包,它不包含POST有效负载。
将代码更改为用户jQuery $.ajax
而不是Ext.Ajax.request
,问题仍然存在。
知道什么可能是错的吗?
THX
答案 0 :(得分:0)
看起来它实际上是代理问题,与sencha或phonegap无关。 如果我停用代理,我没有获得其他外部资源,但这个问题永远不会发生。 将搜索如何修复代理问题。 感谢