`
shuaigg.babysky
  • 浏览: 567516 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

HttpClient 配合 Servlet 测试应用

阅读更多

GetMethod 默认是开启   followRedirects(true);的 , 所以不管服务器是使用sendRedirect 还是 forward , 客户端都会执行到跳转的页面。

如果手动设置followRedirects(false) , 则sendRedirect()的页面 只能通过getMethod.getHeader("location").getValue()来获得 , 执行getMethod.getResponseAsString()得到的是空字符串。

如果手动设置followRedirects(false) , 则forward的页面 , 通过getMethod.getResponseAsString()就可以得到,getMethod.getHeader("location")返回null 。

这也就是forward也sendRedirect的区别。

 

总结一点就是sendRedirect的就是通过getMethod.getHeader("location").getValue()来取得 , 而

forward的跳转是发生在服务器内部的 , 不管你怎么设置 , 都会执行到那个页面。

 

通常用postMethod提交之后获得Header("location").getValue();是服务器使用了sendRedirect , 而如果

Header("location")为空的时候 , 是服务器使用了forward , 但是不管是那种方法 , 服务器都会在检查用户名密码之后

将登陆成功与否设置值在session中 , 对应httpclient就是有这么个cookie , 没登陆成功就是没这个cookie.

但是我们无需理会cookie的管理 , 因为可以使用httpClient.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY)

让HttpClient使用类似浏览器的方式管理cookie,这也使得httpclient的使用更为简单。

分享到:
评论

相关推荐

    Android Servlet WEB http

    Android应用通常使用HttpClient或OkHttp等库发起HTTP请求,与部署在Web服务器上的Servlet进行交互。Servlet接收请求后,处理业务逻辑,然后返回响应给Android客户端。Android客户端可以通过GET或POST方法传递参数,...

    基于java web的宿舍管理系统源码.zip

    对于Java Web应用,JUnit和Mockito等工具可以辅助进行单元测试,而Apache HttpClient或Postman等工具可用于模拟HTTP请求,进行接口测试。 总的来说,基于Java Web的宿舍管理系统是一个综合运用了多种Java Web技术和...

    基于JAVAEE MVC的网络在线通讯录

    JUnit和Mockito等工具可以帮助进行单元测试,而Apache HttpClient或者Selenium可以用于模拟用户交互的集成测试。 9. **部署与运行环境**: 项目部署通常需要Tomcat、Jetty等Servlet容器或完整的应用服务器如...

    创建家居购项目时需要的jar包

    `junit.jar`是Java单元测试的主要工具,配合Mockito等工具进行测试驱动开发。 9. **HTTP客户端库**: 如果项目涉及到HTTP请求,如`httpclient.jar`或`httpcore.jar`(Apache HttpClient),或者`okhttp.jar`(OkHttp...

    Android HTTP 通信demo源码附带Tomcat 服务器源码

    Tomcat是一款开源的、小巧且高效的Java Web服务器,用于部署和运行Servlet和JSP应用程序。在本地搭建Tomcat服务器,可以帮助开发者快速测试HTTP通信的逻辑。 1. **Tomcat服务器的部署**: - 下载Tomcat安装包,...

    spring in action的jar包

    6. **Spring Web**:为创建Web应用提供基础支持,包括Servlet监听器、过滤器等。 7. **Spring Test**:提供了一套全面的测试工具,支持对Spring应用进行单元测试和集成测试。 在"lib"目录下,这些jar包可能包含了...

    BasicAuth的Java服务端实现

    5. **Eclipse工程配置**:理解Eclipse项目结构,如何导入和运行项目,以及如何调试和测试。 6. **Maven或Gradle依赖管理**:如果项目中使用了这些构建工具,了解如何添加和管理项目依赖。 7. **安全性考虑**:...

    Java中的Ajax编程常用类库打包

    Servlet和JSP配合使用,可以构建出响应Ajax请求的服务器端逻辑。 7. JSON:在现代的Ajax应用中,XML已逐渐被JSON(JavaScript Object Notation)取代,因为JSON更轻量级且易于解析。Java有多种库如Jackson、Gson等...

    SpringMVC项目所需jar包

    11. **Spring Test**:`spring-test`和`spring-test-mvc`用于单元测试和集成测试Spring MVC应用,提供模拟环境和断言工具。 12. **JUnit**:`junit`是单元测试的标准库,与`spring-test`一起用于编写和运行测试用例...

    java开发常用的jar包整理

    JUnit的jar包如junit.jar,通常与Mockito等其他测试工具配合使用。 8. **Servlet和JSP**:对于Web开发,Servlet和JSP(JavaServer Pages)是基础。servlet-api.jar和jsp-api.jar包含了Servlet和JSP的规范接口,是...

    javaWeb中的各种jar包

    - `standard.jar`:JSTL的实现库,与`jstl.jar`配合使用。 4. **EL (Expression Language)**: - `el-api.jar`:表达式语言API,允许在JSP页面中直接访问Java对象的属性,如`${user.name}`。 - `javax.el.jar`:...

    spring mvc所需的jar包

    14. **其他可能的依赖**:根据实际项目需求,可能还需要其他库,比如 MyBatis 或 Hibernate 这样的持久层框架,或者 Apache HttpClient、JUnit 等测试库。 正确配置这些 jar 包后,开发者可以创建 Controller 类,...

    java用到的jar包集合全集

    9. **Servlet/JSP**: Servlet和JSP(JavaServer Pages)是用于构建动态Web应用的标准API,Servlet处理服务器端逻辑,JSP则用于生成HTML内容。 10. **JUnit**: 用于编写和运行Java单元测试的框架,确保代码质量并...

    JAVA社区网络服务系统(源代码+论文).zip

    同时,系统可能会使用Apache HttpClient或OkHttp等库来实现对外部API的调用,以获取或发送数据。 数据库管理是另一个关键部分。MySQL或PostgreSQL这类关系型数据库通常被用作存储用户信息、帖子、评论等数据。ORM...

    java web信息采集系统

    1. **Servlet和JSP**:作为Java Web应用的核心部分,Servlet用于处理HTTP请求,而JSP则用于生成动态HTML内容。 2. **MVC框架**:如Spring MVC或Struts2,提供模型-视图-控制器架构,使代码组织更清晰,便于维护和...

    java开发常用jar包

    8. **JUnit**: `junit.jar`是Java单元测试的标准库,配合`hamcrest-core.jar`等辅助库,让开发者可以编写和运行可重复的测试用例。 9. **Mockito**: `mockito-core.jar`用于模拟对象,帮助进行单元测试,可以在不...

    android 学习路线大纲

    - Android测试:单元测试,UI测试,Monkey测试等。 - Android安全:数据加密,反编译防护,网络安全等。 以上就是Android学习的基本路线,对于初学者来说,逐步深入这些领域将有助于构建扎实的Android开发基础。...

    开发用jar包整理

    以上只是部分可能包含的JAR文件,实际的“开发用jar包整理”可能会根据作者的需求包含更多其他库,如DAO框架(MyBatis, iBatis, Hibernate等),测试框架(JUnit, Mockito等),网络库(Apache HttpClient等),安全...

    文件批量上传

    在Java中,我们可以使用HttpURLConnection或者Apache HttpClient库来构造这样的请求。在Eclipse环境下,我们可以创建一个Servlet或者Controller来接收并处理这些上传的文件。 描述中提到的"uploadify"可能是指...

    demo工程列表说明1

    1. **Web工程**:描述中提到了所有的demo工程统一建立为web工程,这表明是在Web环境下开发和测试的,可能涉及到Servlet、JSP、HTML、CSS、JavaScript等技术。 2. **jQuery**:在ajaxdemo中使用了jQuery来发送AJAX...

Global site tag (gtag.js) - Google Analytics