【问题标题】:managed cookie in cordova with android使用 android 在科尔多瓦管理 cookie
【发布时间】:2014-12-31 16:49:56
【问题描述】:

我用cordova为android做了一个应用程序,主页在本地,并通过jQuery调用网络服务。该应用程序有一个插件来查看 PDF。

现在我们要查看 PDF,但要查看 pdf 需要登录服务器。登录过程使用 jQuery 完成,并且可以正常工作。一旦我们登录服务器,我们就可以调用需要登录的服务。

问题是我们要检索需要登录的 PDF,但 http 会话没有从 jquery 共享到 cordova 插件(或 webview)。服务器上的请求就像一个未登录的用户。

我们试图恢复不需要登录的 PDF,它可以工作。

使用的插件基于http://call-me-early.blogspot.com.es/2013/03/android-webview-download-pdf-generated.html

¿有什么想法吗?

我们尝试使用 jquery 检索 pdf 并将字节数组传递给插件,但不起作用。 另一种思路是将jquery的cookie的内容移动到插件中,但是我们获取不到这个cookie

【问题讨论】:

    标签: android cordova cookies


    【解决方案1】:

    已修复。我们所做的是在调用(成功)中捕获在服务器上创建会话的 cookie。我们将 cookie 保存在本地,然后将其发送到打开 PDF 插件,该插件将 cookie 添加到制作原生部分的调用中。

    JS部分:

    success: _.bind(function(data, textStatus, request){
        var header = request.getAllResponseHeaders();
        console.log("header: "+header);
        var match = header.match(/(Set-Cookie|set-cookie|Set-cookie): (.+?);/);
        console.log("match: "+match);
        if(match!==undefined && match!==null && match.length>=3){
            console.log("CON COOKIE");
            console.log("COOKIE: "+match[2]);
            localStorage.setItem("miCookie",match[2]);
        }
    },this),
    

    插件调用

    function callShowPdfPluginAndroid( param ){
    require(['utils'], function(utils) {
        utils.showLoading();
        return cordova.exec( function(){utils.hideLoading();}, 
            function(error){utils.hideLoading();nativePluginErrorHandler(error);}, 
            "NativeBridgeAndroid", 
            "ShowPdf", 
            [param,localStorage.getItem("miCookie")]);
    });
    }
    

    本地人:

    URL u = new URL(params[0]);
    HttpURLConnection c = (HttpURLConnection) u.openConnection();
    c.setRequestMethod("GET");
    c.setRequestProperty("Cookie",cookie);
    c.setDoOutput(true);
    c.connect();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-31
      • 1970-01-01
      • 2016-10-10
      • 2015-05-19
      • 2016-04-12
      • 2015-07-12
      相关资源
      最近更新 更多