没有找到模块xhr未找到cordova-1.5.0.js

时间:2012-03-28 00:00:26

标签: javascript cordova oauth-2.0

我正在使用phonegap cordova-1.5.0.js和jar。 并使用带有jsOAtuh.1.3.3.js的cordova的phonegap-plugins

我收到错误消息:
“未在文件中找到未捕获的模块xhr:///android_asset/www/cordova-1.5.0.js”

每当我尝试创建OAuth对象时。

我有以下参考: https://github.com/bytespider/jsoauth
这是我的代码。



    var config_google={
        var config_google={
        consumerKey: "{removed}",
        consumerSecret: "{removed}",
        requestTokenUrl: "https://www.google.com/accounts/OAuthGetRequestToken?scope={removed}",
        authorizationUrl:"https://www.google.com/accounts/OAuthAuthorizeToken",
        accessTokenUrl:"https://www.google.com/accounts/OAuthGetAccessToken"
    };

    function authservice(service){
        //alert(service);
        curfunc = "authservice";
        str_service = service;
        if (service === 'google'){
            oauth = new OAuth(config_google);
        }else if....

    ........
    }

之前我使用过phonegap-1.4.1.js(之前的版本)代码并且它可以工作。我在1.4.1和1.5.0上搜索了xhr,他们都没有xhr,但有一些评论引用。不完全确定为什么更改1.5.0并且它将禁用代码。我需要使用1.5.0是因为我需要使用childbrowser插件。

你能指出我正确的方向吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我有一个让它发挥作用的黑客攻击。 802行的需求(“xhr”)认为有人在某处注册了它,但在记录它时,我没有看到任何人调用Cordova的“定义”函数来注册它。

因此,如果你注释掉这3行代码,那么就可以快速回到XMLHttpRequest,这样(在Request构造函数中的第800行附近):

if (typeof global.Titanium !== 'undefined' && typeof global.Titanium.Network.createHTTPClient != 'undefined') {
    XHR = global.Titanium.Network.createHTTPClient();
//} else if (typeof require !== 'undefined') {
//    // CommonJS require
//    XHR = new require("xhr").XMLHttpRequest();
} else {
// W3C
    XHR = new global.XMLHttpRequest();
}