使用 webview 中的 cookie 执行 HTTP 请求

2024-02-17

我有这样的场景,我的应用程序在 webView 中显示一个 2 页的登录过程。

第一页仅询问您计划连接到哪个域。 第二页要求提供凭据。

我正在尝试在 webView 中执行登录,然后执行来自本机代码的请求。 我意识到我需要从 webView 获取存储的 cookie(但从哪个 url?从第一页还是第二页?),然后将 cookie 用于本机代码请求。

有人可以告诉我该怎么做吗?登录过程很简单 - 用户通过 webview 登录 - 很好。现在,我知道如何使用 cookie 管理,但我不知道我应该查找哪个 cookie - 它是第一个登录页面的 url 吗?是第二个吗?有关系吗?

接下来,如何使用 cookie 通过 GET 请求发送回服务器,以便服务器知道我已通过身份验证?

我很欣赏我无能为力并寻求帮助的答案:)


由于接受的答案并没有真正描述它是如何完成的:

将这些行放在应用程序启动的地方:

    CookieHandler.setDefault(new CookieManager()); // Apparently for some folks this line works already, for me on Android 17 it does not.
    CookieSyncManager.createInstance(yourContext); // or app will crash when requesting cookie

然后在你的连接中:

       String cookies = CookieManager.getInstance().getCookie(urlString);
        URL url = new URL(urlString);
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setReadTimeout(10000 /* milliseconds */);
        conn.setConnectTimeout(15000 /* milliseconds */);
      //  conn.setRequestMethod("GET");
      //  conn.setDoInput(true);
        if (cookies != null)
            conn.setRequestProperty("Cookie", cookies);
        // Starts the query
        conn.connect();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 webview 中的 cookie 执行 HTTP 请求 的相关文章

随机推荐

  • 一个或多个数组的加权洗牌?

    使用嵌套数组中的权重对一个或多个数组进行混洗的好算法是什么 Example array array array name gt John rank gt 3 array name gt Bob rank gt 1 array name gt
  • 判断 __getattr__ 是方法还是属性调用

    有什么方法可以使用 getattr 确定方法和属性调用之间的区别吗 I e in class Bar object def getattr self name if THIS IS A METHOD CALL Handle method c
  • 如何在 Google AppEngine 平台上访问 Fauxton?

    我正在 Google App Engine 上创建一个离线优先的应用程序 其中 PouchDB 作为我的本地数据库 CouchDB 作为我的远程数据库 我已在 Google AppEngine 上启用了 CouchDB 并尝试访问以下 UR
  • 今天小部件在应用程序更新后没有响应

    我今天的小部件有一个奇怪的案例 我的应用程序有一个小部件来向用户显示一些信息 小部件上有一些按钮 用户可以点击按钮来获取不同的信息 奇怪的是 我正在开发我的应用程序的新版本 我需要测试一下 当我在旧版本上安装新的临时版本应用程序时 我的小部
  • Python f.write() 不接受更多参数

    我有这样的Python代码 f open nv csv a a 10 3 b 3 12 c 3 13 f write a b c 这将输出返回为 f write a b c TypeError function takes exactly
  • 如何在 PHP 中将字符串转换为数字?

    我想转换这些类型的值 3 2 34 0 234343 等到一个数字 在 JavaScript 中我们可以使用Number 但是PHP中有类似的方法吗 Input Output 2 2 2 34 2 34 0 3454545 0 345454
  • 如何使用React Router将数据从一个页面传递到另一个页面

    请我需要有关react router dom的帮助 我是这个库的新手 似乎可以找到任何解决方案 我从 api 调用中得到三个结果 其中我映射数据以将其呈现在 UI 上 现在我需要的是 如果我单击此列表之一上的一行 我希望它带我到屏幕仅显示我
  • Calendar.WEEK_OF_MONTH 在两个不同的设备上给出不同的结果

    我有两台设备 HTC Android 2 3 5 和 Samsung Android 2 3 6 现在我面临的问题是 我需要日期是一个月中的第几周 所以我编写了这段代码并安装在两部手机上 并将系统日期设置为 2013年1月27日 Calen
  • 无法使用runtime.exec重新启动设备

    由于某种原因 我无法使用 Runtime getRuntime exec system bin reboot 重新启动 Android 设备 我已经在 3 台设备上尝试了以下代码 但没有成功 一个是从 rowboat android 源代码
  • 如何使用触控板在 Java AWT ScrollPane 中进行水平鼠标滚轮滚动

    与许多现代鼠标和触控板一样 我的笔记本电脑支持垂直和水平滚动 一旦你习惯了 它就会让人上瘾 我只是希望我的 Java 应用程序支持通过触控板 鼠标滚轮进行水平滚动 但在我搜索的所有地方似乎这在 Java 中是不可能的 我真的希望有人告诉我我
  • 使用内存中查询实现自定义 QueryProvider

    我正在尝试创建一个包装器可查询库 https github com re motion Relinq blob develop Core QueryableBase cs and INh查询提供者 https github com nhib
  • iOS 下载和解析大型 JSON 响应导致 CFData(存储)泄漏

    用户第一次打开我的应用程序时 我需要下载大量数据 我从服务器以 JSON 形式获取所有这些数据 根据用户的不同 这些 JSON 文件的大小可以从 10kb 到 30mb 不等 而且数量超过 10 个 当 JSON 的记录不超过 500 条左
  • 立场:React Native中的绝对问题

    我正在制作一个反应本机应用程序 其中有一个左侧和右侧部分 左侧部分包括flex 0 7右侧部分包括flex 0 2 在左侧部分内 我有一个容器 里面有一个ImageBackground https reactnative dev docs
  • MongoDB 查询 - 限制名称与模式匹配的字段

    我已经阅读了有关 MongoDB 中投影的所有内容 我希望这很简单 但由于 Mongo 查询的巨大灵活性 我错过了它 在我们的 MySql 数据库中 我们采用了一种业务实践 即为 隐藏 字段添加下划线前缀 我们的应用程序知道如何隐藏这些字段
  • PHP 中同时调用多个 API

    我正在处理一个场景搜索页面 http www idynbiz com web html carcrawler 该搜索页面必须同时对以下 5 个搜索引擎进行 API 调用 http www kijiji ca http www kijiji
  • C - RGB 值 - 计算模糊滤镜的 RGB 值的平均值

    前两个并不难 但第三个让我生气 模糊滤波器必须计算某些像素组的 RGB 值的平均值 以便替换中心像素的值 想象一个 3x3 的网格 其中中心的像素必须使用周围八个像素的平均值和中心像素本身的 RGB 值进行操作 到目前为止我所做的如下 Bl
  • 在 Magento 中根据 URL 参数加载对象

    我在为 Magento 商店创建自定义模块时遇到问题 我已成功添加路线 着陆 并创建 布局文件 在我的基本布局中显示模板内容 我现在需要稍微超越这一点 我希望能够从 URL 加载参数 根据该参数抓取一个对象 并根据对象的内容显示内容 示例
  • Magento - 从预调度观察者转发到不同的控制器操作

    是否可以根据我可以在控制器预调度事件中检查的特定条件转发到不同的操作 在同一控制器内 例如 要运行的操作是索引 如果我为预调度事件创建一个观察者 如果某个条件为真 我想运行不同的操作 myAction而不是indexAction 您可以在预
  • Angular JS 和部分

    是否可以在 Angular JS 中将 html 页面嵌入到另一个页面中 如果可以的话 该怎么办呢 Here http docs angularjs org tutorial step 08在他们的教程中 部分内容并未嵌入页面中 但它就像您
  • 使用 webview 中的 cookie 执行 HTTP 请求

    我有这样的场景 我的应用程序在 webView 中显示一个 2 页的登录过程 第一页仅询问您计划连接到哪个域 第二页要求提供凭据 我正在尝试在 webView 中执行登录 然后执行来自本机代码的请求 我意识到我需要从 webView 获取存