问题标签 [cookiemanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8498 浏览

java - 在 Android 中创建一个新的 cookie

我想在 Android 中创建一个新的 Cookie。当我做:

我收到一条错误消息,“无法实例化 Cookie 类型”。我要做的就是创建一个新的 cookie 并将其粘贴到 cookie 存储中(使用 org.apache.http.client CookieStore 而不是 java.net.CookieStore 或其他)。我无法使用 HttpCookie,因为我无法将其转换为 Cookie。这里有什么想法吗?

编辑(附加代码):

这或多或少是我想做的事情:

0 投票
1 回答
14931 浏览

android - 如何删除特定的 cookie 值?

在我的应用程序中有使用浏览器的 facebook 和 twitter 登录,登录后它会自动存储 cookie。我必须注销 facebook,这将发生删除 facebook cookie 值,但我不知道如何删除特定的 cookie。

如果我使用以下方法删除所有 cookie:

但它会删除所有 cookie 值,这意味着它将同时注销 facebook 和 twitter。

我的问题是——如何删除特定的 cookie 值。

谢谢..

0 投票
1 回答
6971 浏览

java - Android CookieManager

我有一个应用程序可以进行多次 Web 调用,以便在返回 JSON 之后进行身份验证。我的网络调用是对 https 服务器的,我正在使用 HTTPURlConnection。

我需要将会话存储在cookie中,经过研究,我发现了这个

http://developer.android.com/reference/java/net/HttpURLConnection.html

在带有 cookie 标题的会话下,它告诉您在此处使用此代码

但是,当我尝试使用此代码时,新的 CookieManager(); 部分以红色突出显示并说

构造函数 CookieManager 不可见

并且 Cookiehandler.setDefault 也以红色突出显示并说

CookieHandler 类型中的方法 setDefault(CookieHandler) 不适用于参数 (CookieManager)

有人知道为什么吗?

提前致谢!

0 投票
1 回答
1127 浏览

android - Android WebView 未提取不同设备上的所有 cookie

我正在尝试在登录后从网页中提取 cookie 的值。我正在使用 cookie 帮助程序类,并android.webkit.CookieManager在网页完成加载后检索 cookie,即onPageFinished()

这一切正常,我可以在我的测试设备 Galaxy S2 (4.0.4)、Galaxy S3 (4.1.1) 和 HTC Explorer (2.3) 上看到 cookie 名称和值。但是,相同的代码在 Sony Xperia (2.3) 上不起作用?

我已经注销了 url 以确保我在正确的页面上工作,出于某种原因,我只从 Xperia 上的站点获得了 3 个 cookie,而我应该得到 7 个(大约)。

下面是我正在运行的代码的简化版本。感谢任何回应。提前致谢!

WebViewActivity


饼干助手

0 投票
1 回答
1454 浏览

android - 如何在 Android 上的 android.webkit.CookieManager 和 java.net.HttpUrlConnection 之间同步 cookie

我正在Android上制作程序。它有一个按钮和一个 WebView。如果我单击该按钮,它会将帖子消息发送到 Web 服务器。(使用 httpurlconnection)webview 从同一服务器加载页面。我想在核心和 webview 之间同步 cookie。我找到了从核心到 webview 的方法。但是,我找不到从 webview 到核心的方法。

我试过这些顺序。

  1. webview的页面被加载。
  2. 从 webview 读取 cookie。
  3. 使用 HttpCookie 将这些 cookie 添加到核心 cookie。

    URI uri = 新的 URI(url);

    HttpCookie httpCookie = new HttpCookie(cookie.getKey(), cookie.getValue());

    ((java.net.CookieManager) CookieHandler.getDefault()).getCookieStore().add(uri, httpCookie);

但它不起作用。怎么了?请给我建议。先感谢您。

0 投票
1 回答
45216 浏览

java - 带有 CookieManager 的 HttpURLConnection 是否应该自动处理会话 cookie?

我有一个 Java 应用程序(JDK 1.7.0_13)并且正在使用 java.net.HttpURLConnection 连接到一些基于 servlet 的服务,这些服务进行会话管理。我想弄清楚如何使用 java.net.CookieManager 来跟踪会话 cookie。阅读文档我得到的印象是使用 CookieHandler.setDefault(new CookieManager()) 安装 CookieManager 应该会导致 cookie 管理自动发生。但是,对同一 URL 的多个请求似乎不会保留 cookie。我是否必须手动从响应中提取 cookie 并自己在请求中重新发送它们,还是 CookieManager 会自动为我执行此操作?如果 CookieManager 没有,那么它会增加什么价值?

为了进行测试,我有一个 servlet,每次浏览器访问 URL 时,它都会成功地增加一个计数器。这在 Safari、FireFox 和 Chrome 中运行良好……但是,我无法在独立的 Java 应用程序中运行它。

这是一个非常简单的测试程序来说明我希望简单的工作。它在开始时安装 CookieManager,然后在控制台输入 URL 时重复调用 fetch(String urlString) 方法。

从这个应用程序调用我的 servlet 显然会从服务器返回一个会话 cookie。但是,再次调用会获得一个新的会话 cookie。

因此,总而言之,我是否必须做其他事情才能使 CookieManager 自动为我工作,或者我是否必须求助于从响应中手动提取 cookie 并通过请求重新发送它们?

0 投票
1 回答
7812 浏览

android - 如何从 android.webkit.CookieManager 获取所有 cookie 或 cookie 的 url

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

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

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

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

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

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

我需要获取页面。

编辑:

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

0 投票
1 回答
2663 浏览

android - Android Webview:如何从 cookie 中检索到期日期

在 Android 中,有没有办法检查 webkit 使用的 cookie 是否已过期?CookieManager.getCookie(url)没有有效期。

0 投票
2 回答
295 浏览

android - Android 2.2 上的 Cookie 在 WebView 中不可用

我制作了一个最低要求 API 8 的 Android 应用程序。用户在我的后端使用 cookie 进行身份验证。这适用于所有具有 api 级别 9 或更高级别的设备。Cookie 使用 CookieManager 保存:

我检查此 Cookie 是否也可用于 CookieManager:

这总是返回 true,但如果 Android 版本高于 2.2,则 Cookie 仅在 WebView 中可用。(我用phpinfo检查了这个)

我的 WebView 配置如下所示:

0 投票
1 回答
2889 浏览

android - 无法设置 cookie android.webkit.CookieManager

我已经通过 WebView 登录到一个站点。然后我得到了由 webview 在登录时设置的 cookie。然后我试图稍后设置cookie。请看我的代码:

checkPost 1打印的 cookie 中显示它很好。但是在它的声明中checkPost 2和之后,表明大部分cookie都消失了。问题是什么 ?我需要设置 cookie。但我找不到花费大约 2 天的方法。sync()CookieSyncManager.getInstance().sync();checkPost 3

编辑:

在android文档中它说:

public void setCookie(字符串 url,字符串值)

为给定的 URL 设置一个 cookie。任何具有相同主机、路径和名称的现有 cookie 都将被新 cookie 替换。设置的 cookie 必须没有过期,也不能是会话 cookie,否则将被忽略。

有没有办法通过强制CookieManager设置会话cookie setCookie()?我认为问题是,可能是我试图设置session cookie