如何在Phonegap Android中使用HTTPS协议执行Ajax调用?

时间:2012-07-22 06:51:52

标签: android jquery jquery-mobile cordova

我是Android新手。我正在开发Phonegap中的应用程序并实现了ajax调用以使用HTTPS协议与服务器通信。当我在清单文件中将debuggable设置为true时,它工作正常。如果我将其更改为false,则表示无效。请帮我。

提前致谢。

2 个答案:

答案 0 :(得分:3)

您使用的网络服务需要有一个有效的证书,一个非自签名证书。否则SSL将失败。

请参阅here

答案 1 :(得分:0)

Android 4.0+中出现的另一个问题(但不是2.3版本的旧版本)...您必须在发送前手动设置授权标题。使用新用户名:密码:jQuery 1.7中添加的选项不起作用。

以下示例说明了您必须做的事情 注意:这需要base64 jquery插件。

 $.ajax({
            url: "https://yoururl,
            type: method,
            dataType: 'json',
            // username: username,  // Doesn't work on ANDROID
            // password: password,  // Doesn't work on ANDROID
            beforeSend: function (xhr)
            {
                xhr.setRequestHeader("Authorization", "Basic " + $.base64.encode( username + ":" + password ));
            },
            data: options.data,
            success: function(response) {

            },
            error: function(jqXHR, textStatus, errorThrown) {

            }
        });