xhr与blackberry上的powergap
-
18-09-2020 - |
题
我正在尝试在黑莓手机上使用phonegap提交xhr。目前,当我提出它的请求时,它会默默地失败。我尝试了使用jQuery jQuery.getJSON(url , callback)
,
xhr对象
var xmlhttp = new XMLHttpRequest();
//callback function when XMLHttpRequest is ready
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4){
if(xmlhttpForTGT.status==200){
response = xmlhttpForTGT.getResponseText()
}
else{
alert("Request Failed")
}
}
}
xmlhttp.open("GET", url , true)
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
xmlhttp.send()
.
和xui
x$('#home').xhr(url,
{method: 'get',
callback: function(){ alert('made request') }});
.
到目前为止,我无法让他们中的任何一个工作。还有其他人能够获得XHR的工作吗?我正在使用jre4.6.1,并使用Eclipse进行开发环境。我试图提出请求时没有错误,任何建议?
解决方案
我已经向PhoneGap-BlackBerry项目提供了很多贡献,并且在所有测试中,由于某种原因,XMLHTTPRequest对象始终在调用Open()函数时始终引发空异常。我不确定为什么 - 电流形式的PhoneGap-BlackBerry利用RIM的专有,非WebKit浏览器,所以也许与它有关。
我所做的是实现一个非常基本的,本机,java的方法,以使HTTP请求和检索响应。它将在PhoneGap应用程序中桥接回JavaScript作为“网络”PhoneGap API的一部分。有关这的一些信息在这里: http://wiki.phonegap.com/known -issues - (黑莓)
注意:这绝对是停止措施。实施是粗糙的,绝对可以使用一些工作。目前,它只适用于返回JSON的API端点。
使用:
navigator.network.XHR('http://www.mysite.com/myapi',
'This is my POST data, or I could pass in "null" for empty POST data',
function(response) {
// This is my success callback.
// Do something with the JSON response object here.
});
.
希望有帮助。
不隶属于 StackOverflow