【问题标题】:how to get all cookies or cookie's url from android.webkit.CookieManager如何从 android.webkit.CookieManager 获取所有 cookie 或 cookie 的 url
【发布时间】:2013-02-18 08:13:26
【问题描述】:

主要是,我使用 webview 登录到 facebook。所以,我不知道哪些 url 的哪些 cookie 保存到 CookieManager 中。我不知道这是否可能,但我知道该怎么做。

现在,我需要使用 Jsoup 获取页面。但我还需要传递一些 cookie 来获取页面,否则服务器会返回一个错误寻呼机。

我想要 Jsoup,因为我需要页面中的一些信息

我尝试过这样的事情,但我一直收到错误页面:

Map<String, String> cookies = new HashMap<String, String>();
cookies.put(domain1, my_cookie1);
cookies.put(domain2, my_cookie2);
cookies.put(domain3, my_cookie3);
cookies.put(domain4, my_cookie4);

Document doc = Jsoup.connect(uri.toString())
                            .cookies(cookies)
                            .timeout(10000)
                            .get();
Log.e("title", doc.title());

my_cookie 来自 CookieManager。而且它们不是空的,因为我已经打印了它们。

我认为问题出在 cookie 上。或不?有什么解决办法吗?我想我错过了 CookieManager 中的一些 cookie。

我需要获取页面。

已编辑:

或者,是否可以将 cookimanager 传递给 Jsoup ?因此,它可以直接从 cookiemanager 获取 cookie。或者,我可以知道获取我的愿望页面需要哪些 cookie?

【问题讨论】:

    标签: android jsoup cookiemanager


    【解决方案1】:

    我已经解决了这个问题。首先,我一直得到正确的饼干。那么问题是什么。要么我将 cookie 与 Jsoup 集成是错误的,要么 Jsoup 做错了什么。所以,首先我得到带有HttpUrlConnection 的页面,然后用Jsoup 解析它。像这样:

    URL form = new URL(uri.toString());
    HttpUrlConnection connection1 = (HttpURLConnection)form.openConnection();
    connection1.setRequestProperty("Cookie", my_cookie);
    connection1.setReadTimeout(10000);
    StringBuilder whole = new StringBuilder();
    BufferedReader in = new BufferedReader(
    new InputStreamReader(new BufferedInputStream(connection1.getInputStream())));
    String inputLine;
    while ((inputLine = in.readLine()) != null)
          whole.append(inputLine);
    in.close();
    Document doc = Jsoup.parse(whole.toString());
    

    任何有关此代码的建议将不胜感激。

    【讨论】:

    • HttpUrlConnection 实例使用哪些依赖?
    • @lidox 我使用了默认的 java(Android) HttpUrlConnection。我没有使用任何额外的依赖项
    猜你喜欢
    • 2016-08-03
    • 1970-01-01
    • 2016-01-14
    • 1970-01-01
    • 1970-01-01
    • 2013-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多