微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Blackberry Webworks上发送带头文件的AJAX请求时出现问题

我正在开发一个BlackBerry webworks应用程序,我遇到了一个我正在向服务器发出的 AJAX请求.我正在学习 HTML / Javascript / AJAX,所以原谅任何初学者的错误.基本上,对服务器进行格式化的HTTP请求,返回我在应用程序中使用的JSON对象.我使用AJAX来提出没有任何框架的请求.
大多数请求不需要进行身份验证,而且这些请求返回正常.但是,要访问服务器的目录部分,用户名密码将被编码并作为XMLHTTPRequest的标头发送.当我尝试添加标题时,请求被发送,但我从来没有得到任何回报. readyState属性设置为1,但永远不会超出该范围.我知道服务器工作正常,因为我为iPhone做了同样的事情,并且它起作用了.

这是相关代码

function grabFromServer(httpRequest){   
httpconnection = new XMLHttpRequest();
var me = this;
httpconnection.onreadystatechange=function(){
    alert(httpconnection.readyState);
    if(httpconnection.readyState==4){
        me.processResponseText(httpconnection.responseText);
    }
};
httpconnection.open("GET",httpRequest,true);

if(this.request == "company" || this.request == "property" || this.request == "individual"){
    var authorized = this.checkCredentials();
    if(!authorized){
        //ask for username pword
    }
    //here,add credentials
    httpconnection.setRequestHeader("Authorization","Basic : ODI5ZGV2bDokY19kdXN0Ym93bA==");
}
httpconnection.send();

}

解决方法

你的代码似乎很好.您是否在config.xml文件添加一个条目以允许访问您的域?您应该看到类似< access subdomains =“false”uri =“http://data.mycompany.com/”/>的条目.要从WebWorks应用程序向外部网站发出任何HTTPRequests,您必须向“白名单”域添加条目,如下所示.

如果您正在使用eclipse插件,请打开config.xml文件,单击底部的“权限”选项卡,然后单击“添加域”.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐