`
wuzijingaip
  • 浏览: 329719 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

httpclient访问需要登录才能访问的数据

阅读更多
package com.grkj.modules.tree.web.excel;

import java.io.IOException;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.PostMethod;

public class HttpClientTutorial {

	//登录URL
	private final static String URL1 = "xxx.com/username=xxx&password=xxx;
	//要访问数据
	private final static String URL2 = "xxx.com/getjession";

	public static void main(String args[]) {
		/* 创建HttpClient实例 */
		HttpClient client = new HttpClient();
		/* 创建一个post方法 */
		PostMethod postMethod = new PostMethod(URL1);
		PostMethod postMethod2 = new PostMethod(URL2);
		
		
		/* 执行post方法 */
		try {
			int statusCode = client.executeMethod(postMethod);
			int statusCode2 = client.executeMethod(postMethod2);//注意client 要和登录人client 就同一个,这是保持session的关键

			if (statusCode2 != HttpStatus.SC_OK) {
				System.err.println("Method failed: "
						+ postMethod2.getStatusLine());
			}

			/* 获得返回的结果 */
			byte[] responseBody = postMethod2.getResponseBody();

			System.out.println(new String(responseBody));

		} catch (HttpException e) {
			System.err.println("Fatal protocol violation: " + e.getMessage());
			e.printStackTrace();
		} catch (IOException e) {
			System.err.println("Fatal transport error: " + e.getMessage());
			e.printStackTrace();
		} finally {
			/* Release the connection. */
			postMethod.releaseConnection();

		}
	}
}

分享到:
评论

相关推荐

    java httpclient 模拟登录

    在"java httpclient 模拟登录"这个场景下,我们通常会用到HttpClient来模拟用户登录网站的过程,获取登录后的session信息,以便后续能够访问登录后才能看到的页面内容。以下将详细介绍如何使用Java HttpClient进行...

    httpclient访问需要客户端认证数字证书的https接口的处理方法

    为了访问这类接口,我们需要自定义SSL上下文(SSLContext)并配置HttpClient。 首先,我们来看`InstallCert.java`这个文件。这个文件通常用于安装或导入客户端证书到本地的信任存储。在Java中,我们可以使用Keytool...

    Http或HttpClient访问网路数据

    使用HttpClient访问网络数据的基本步骤如下: 1. **创建HttpClient实例**:首先,需要创建一个HttpClient对象,这将是发送请求的主体。可以设置连接池大小、超时时间等参数。 2. **构建HttpGet或HttpPost请求**:...

    使用httpClient访问https+443端口号。

    标题中的“使用httpClient访问https+443端口号”指的是使用Apache HttpClient库来发起HTTPS(安全超文本传输协议)请求,目标服务器的默认端口是443。HTTPS是一种基于SSL/TLS的安全通信协议,用于在客户端和服务器...

    httpclient来进行https访问

    要使`httpclient`支持HTTPS访问,首先需要配置SSL上下文。这通常涉及到证书管理、密钥存储以及信任管理等环节。 ### 关键技术细节 #### 3.1 配置SSL上下文 在`httpclient`中使用HTTPS,首先要解决的是SSL上下文的...

    HttpClient登录

    在文件名列表中的"photo163"可能是网易相册的某种标识,如果这是登录后访问的资源,你可能需要在登录成功后,使用相同的`HttpClient`实例来发送新的GET请求获取资源。 总的来说,HttpClient提供了一套强大的工具来...

    android httpclient 访问服务器 获取json数据

    本示例主要讲解如何使用HTTPClient访问服务器并获取JSON格式的数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简单易读、易于解析,被广泛应用于Web服务的数据传输。 首先,你需要在...

    httpclient绕过登陆验证码直接抓取内部数据

    使用 HttpClient 绕过登录验证码可以实现免登录访问,但是需要注意 Cookie 的路径、域名和过期时间等信息,并选择合适的 Cookie 策略。同时,我们也需要注意.blackhat 的攻击,以保护用户的登录信息。

    httpUtil httpclient 登陆携带cookie访问下一个连接

    总之,`httpclient`库提供了一种高效且灵活的方式来模拟用户登录并携带cookie访问其他网页,这对于自动化测试、数据抓取或需要保持登录状态的Web服务来说是非常有用的。正确地理解和使用这些技术,能够帮助开发者更...

    httpclient如何保持session会话模拟登录后的操作

    例如,访问一个需要登录权限的页面。 ```java HttpGet httpGet = new HttpGet("http://example.com/protected_page"); httpGet.setHeader("Cookie", sessionCookie.getValue()); CloseableHttpResponse ...

    (最新)HttpClient4模拟登录腾讯微博

    这篇最新的文章“HttpClient4模拟登录腾讯微博”探讨了如何利用HttpClient4实现对腾讯微博的模拟登录,这在自动化测试、数据抓取等场景中非常实用。 HttpClient4库提供了丰富的API,可以定制化地构造HTTP请求,包括...

    Java爬虫Jsoup+httpclient获取动态生成的数据

    在Web开发和数据抓取领域,Java爬虫技术是实现网页自动化信息提取的重要手段。...但需要注意的是,爬取数据时应遵守网站的robots.txt协议以及相关法律法规,合理使用爬虫,避免对目标网站造成过大的访问压力。

    httpClient 调用远程接口 获取数据到本地文件夹

    访问某些远程接口可能需要身份验证。HttpClient支持多种认证机制,如Basic Auth、Digest Auth等。确保在发送请求时添加正确的认证信息,同时注意保护敏感数据的安全。 8. **日志记录与监控**: 为了便于问题排查...

    httpclient4.1访问https的配置方法

    【描述】:“本教程将指导你如何利用Apache HttpClient 4.1实现对HTTPS服务的访问,首先需要在Tomcat服务器上配置SSL支持。我们将涵盖SSL证书的生成、Tomcat服务器的SSL配置以及HttpClient的使用。” 【标签】:...

    Android通过HttpClient访问服务器的servlet

    总的来说,Android通过HttpClient访问服务器的Servlet涉及到了网络请求的发起、参数封装、响应接收以及数据解析等多个环节。理解并熟练掌握这些步骤,对于构建具有网络功能的Android应用至关重要。在实际开发中,还...

    Titanium中Httpclient访问REST 服务

    本主题将深入探讨如何在Titanium框架中使用HttpClient访问REST服务,这对于构建跨平台的移动应用至关重要。 Titanium是一款JavaScript开发的开源移动应用框架,它允许开发者使用JavaScript编写原生iOS和Android应用...

    HttpClient4.3需要的jar

    5. **使用方法**:使用HttpClient需要导入相关jar包,然后创建HttpClient实例,构造HttpGet或HttpPost对象,设置请求参数,最后通过HttpClient实例执行请求并获取响应。 6. **连接管理**:HttpClient 4.3引入了更...

    HttpClient

    2. **下载 Commons Logging**:HttpClient 需要依赖 Commons Logging 来记录日志信息。可以访问 [http://jakarta.apache.org/site/downloads/downloads_commons-logging.cgi]...

    httpclient测试登录并提交表单功能

    - 如果直接提交数据成功,则表示用户已经登录或无需登录即可访问资源。 - **`postData` 方法**: - 创建一个`UTF8PostMethod`对象,设置目标URL为`DATA_ACTION`。 - 添加表单参数(如"name")及其值。 - 使用`...

    httpClient 访问其他Web 获取信息

    在"httpClient 访问其他Web 获取信息"这个主题中,我们将深入理解HttpClient的基本用法和关键概念。HttpClient的设计目标是提供一种灵活、高效且可扩展的方式来执行HTTP操作。在实际应用中,我们通常会用它来抓取...

Global site tag (gtag.js) - Google Analytics