退出 HttpClient 会话

2023-11-23

如何退出 HttpClient 会话?

我使用以下代码使用 Apache HttpClient 登录到应用程序

public HttpClient loginToHexgen(String username, String password) {
        HttpClient client = new DefaultHttpClient();

        // send post url to login to  hexgen
        HttpPost post = new HttpPost("http://localhost:8080/j_spring_security_check");

        try {
            // set the user name and password
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
            nameValuePairs.add(new BasicNameValuePair("j_username", username));
            nameValuePairs.add(new BasicNameValuePair("j_password", password));

            post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            HttpResponse response = client.execute(post);

            HttpEntity entity = response.getEntity();

            if (entity != null) {
                post.abort();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return client;
    }

像下面这样:

HttpClient client = new DefaultHttpClient();
client= httpRequest.loginToHexgen("mayank", "hexgen");

here httpRequest是所在的类loginToHexgen方法被使用。

如果我想使用多个用户使用不同的用户名和密码登录系统,该怎么做?

例如,在同一会话中,我想注销一个用户并使用其他用户登录。


您可以使用一种解决方法 – 使用新的 cookieStore 向新用户发送请求。

// Create a local instance of cookie store
cookieStore = new BasicCookieStore();
// Set the store
httpClient.setCookieStore(cookieStore);

服务器将为您的新用户打开一个新会话。请注意,旧会话不会关闭。 我不建议使用这种方式。

会话管理是在服务器端执行的 - 您不能在客户端执行。 我建议在测试结束时您应该调用一个服务器 URL,该 URL 将使服务器端的会话无效。 (一般使用Form认证的应用都有注销功能,您只需使用即可)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

退出 HttpClient 会话 的相关文章

随机推荐

  • 为什么要使用 !!操作员

    我在一个例子中遇到了一些红宝石 def role role return self roles find by name role to s camelize end 你为什么会使用 难道不一样吗 return self roles fin
  • 使用故事板时如何子类化导航控制器?

    我使用 Xcode 菜单 编辑器 嵌入 导航控制器 在界面生成器中使用故事板 看来在 iOS 6 中你必须子类化 UINavigationController 以允许所有方向 NSUInteger supportedInterfaceOri
  • 列出 PostgreSQL 中带有索引的列

    我想获取 PostgreSQL 中索引所在的列 在 MySQL 中你可以使用SHOW INDEXES FOR table并看看Column name柱子 mysql gt show indexes from foos Table Non u
  • 对 SQLAlchemy 中每个查询的所有表应用全局过滤器

    我们正在尝试设置一个 SaaS 服务 支持共享数据库和架构中的多租户 我们计划在所有表上都有一个tenant id 列 我想做的是 开发人员不必编写任何额外的代码 我的查询就可以按此租户 ID 自动过滤所有涉及的表 在 SQL Alchem
  • 在 Java 中可靠地播放短声音

    我正在努力编写一些基本上只播放短 wav 文件的 Java 代码 短 是指不到一秒的时间 对于使用 Ubuntu 的用户 我使用的文件位于 usr share sounds generic wav 问题是 我似乎不知道如何播放该样本reli
  • 带有 WHERE 子句的 PostgreSQL 更新插入

    我正在尝试将 Oracle 合并查询迁移到 PostgreSql 如中所述this文章中 Postgres UPSERT 语法支持 where 子句 来识别冲突条件 不幸的是 该网页没有提供带有 where 子句 的示例 我尝试在其他地方寻
  • pytest 的 PATH 问题“ImportError:没有名为 ...”的模块

    I used 简易安装安装pytest在 Mac 上并开始为具有如下文件结构的项目编写测试 repo app py settings py models py tests test app py Run py test当在repo目录 一切
  • 实体框架子查询

    伙计们 我是实体框架的新手 我遇到了一个问题 我已经尝试解决很长一段时间了 基本上我有 4 个实体 用户 组 书籍和阅读列表 用户可以加入一个组 并且组包含书籍 由 ReadingList 定义 我正在尝试显示特定组的书籍列表 SQL 如下
  • 在 matplotlib 中将 x 和 y 数据作为关键字参数传递?

    或者 为什么不 import numpy import matplotlib pyplot as plt plt plot xdata numpy array 1 ydata numpy array 1 color red marker o
  • 在 Android 中创建短信应用程序?

    我正在创建一个短信应用程序来发送和接收短信 我可以使用以下代码发送短信 SmsManager sms SmsManager getDefault sms sendTextMessage phoneNumber null message pi
  • 如何从范围中获取随机数,排除某些值

    在 C 中 如何从一系列值 例如 1 100 中获取随机数 但该数字不应该位于某些特定值列表中 例如 5 7 17 23 由于没有人发布任何示例代码 private int GiveMeANumber var exclude new Has
  • 关系数据库中的空值可以吗? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 有一种观点认为关系数据库中不应允许空值 也就是说 表的属性 列 不应允许空值 来自软件开发背景的我真的不明白这一点 似乎如果 null 在属性的上下文中有效 那么就应该允许它 这在 J
  • Python PEP479 更改生成器内部的 StopIteration 处理

    有人可以帮助我了解 PEP479 的含义吗 我正在阅读文档 但无法理解它 摘要说 此 PEP 提议对生成器进行更改 当在生成器内引发 StopIteration 时 它会被替换为 RuntimeError 更准确地说 当异常即将从生成器的堆
  • 嵌入式应用程序中的内存管理资源

    我应该如何管理任务关键型嵌入式应用程序中的内存 我通过谷歌找到了一些文章 但无法找到真正有用的实用指南 The DO 178b禁止动态内存分配 但是如何管理内存呢 提前预分配所有内容并向每个需要分配的函数发送一个指针 分配到栈上 使用全局静
  • XAMPP MySQL 说:无法连接:无效设置

    MySQL 工作正常 然后无缘无故地每当我打开时就会出现此错误http localhost phpmyadmin 我在这里花了几个小时试图找到解决方案 但我尝试过的所有方法都不起作用 有人可以帮帮我吗 我正在使用 XAMPP版本 7 3 6
  • 使用 Yahoo YQL 查询 html

    在尝试使用雅虎查询语言和 YQL 提供的 xpath 功能解析 html 时 我遇到了无法提取 text 或属性值的问题 例如 永久链接 select from html where url http stackoverflow com a
  • 如何在 MongoDB 中使用 Map/Reduce?

    我无法理解 Map Reduce 在 MongoDB 中的工作原理 我有一个包含字段的集合 areacode state county zip city lat lon列出了美国的每个邮政编码以及相应的县 州等 我希望能够查询给定州的所有县
  • 在 iOS 上创建发光文本效果

    我们目前正在构建一个 iPhone 应用程序 希望文本具有发光效果 以适应现实的 UI 设计 这就是我们想要实现的目标 目前我们正在努力创造内部发光效果 因此我们将不胜感激 在 Photoshop 中这段文字有 颜色 98c1c1 外发光
  • Tomcat Java Servlet - 在应用程序启动时初始化类

    我有一个类需要一些时间来启动 进行一些 JNI 调用以及其他调用 因此每次加载页面时初始化此类是不可行的 是否可以在应用程序启动时初始化此类 然后在提供页面时访问其方法 例如 我有我的班级 当应用程序 tomcat 启动时 我希望它初始化
  • 退出 HttpClient 会话

    如何退出 HttpClient 会话 我使用以下代码使用 Apache HttpClient 登录到应用程序 public HttpClient loginToHexgen String username String password H