`
zhengaihua
  • 浏览: 21105 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

HttpClient

 
阅读更多
public class MainActivity extends Activity {

	private EditText et_content;

	private String path = "http://op.juhe.cn/robot/index";

	private String getPath;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		et_content = (EditText) findViewById(R.id.et_content);
	}

	public void getMethod(View v) {
		// get请求
		// http://op.juhe.cn/robot/index?info=你好&key=您申请到的APPKEY

		String content = et_content.getText().toString().trim();
		// 定义请求路径
		try {
			getPath = path + "?info=" + URLEncoder.encode(content, "utf-8")
					+ "&key=65e2651ed3d6c03fb7172df8059578b8";
		} catch (UnsupportedEncodingException e1) {
			e1.printStackTrace();
		}

		new Thread() {
			public void run() {
				try {
					// 面向对象思想
					// 创建客户端对象
					HttpClient httpClient = new DefaultHttpClient();
					// 创建get对象-指定路径
					HttpGet httpGet = new HttpGet(getPath);
					// 执行get请求,获取相应对象
					HttpResponse httpResponse = httpClient.execute(httpGet);
					// http 200 Ok
					// 获取状态行
					StatusLine statusLine = httpResponse.getStatusLine();
					// 获取状态码
					int statusCode = statusLine.getStatusCode();
					if (statusCode == 200) {
						// 获取请求实体对象
						HttpEntity entity = httpResponse.getEntity();
						// 获取实体内容
						InputStream inputStream = entity.getContent();
						String data = StreamUtils.parseStream(inputStream);
						System.out.println("-----" + data);
					}
				} catch (Exception e) {
					e.printStackTrace();
				}
			};
		}.start();

	}

	public void postMethod(View v) {
		// 请求参数放到实体内容中

		new Thread() {
			public void run() {
				try {
					// 定义一个请求客户端对象
					HttpClient httpClient = new DefaultHttpClient();
					// 定义post请求
					HttpPost httpPost = new HttpPost(path);
					// 创建存放键值对的集合
					List<BasicNameValuePair> parameters = new ArrayList<BasicNameValuePair>();
					//添加参数
					parameters.add(new BasicNameValuePair("info", et_content
							.getText().toString().trim()));
					parameters.add(new BasicNameValuePair("key", "65e2651ed3d6c03fb7172df8059578b8"));

					// 创建一个通过url编码过的表单对象
					HttpEntity entity = new UrlEncodedFormEntity(parameters,
							"utf-8");
					// 设置post请求的实体对象
					httpPost.setEntity(entity);
					//执行post请求获取相应对象
					HttpResponse httpResponse = httpClient.execute(httpPost);
					if(httpResponse.getStatusLine().getStatusCode()==200){
						InputStream inputStream = httpResponse.getEntity().getContent();
						String data = StreamUtils.parseStream(inputStream);
						System.out.println("----"+data);
					}
				} catch (Exception e) {
					e.printStackTrace();
				}
			};
		}.start();

	}

 

分享到:
评论

相关推荐

    httpclient.jar包下载

    《深入解析httpclient.jar及其与code.jar的关联》 在Java开发中,HTTP通信是不可或缺的一部分,而Apache HttpClient库正是Java实现HTTP客户端操作的重要工具。本文将深入探讨httpclient.jar包,以及它与code.jar包...

    HttpClient4.2.1版本的Jar包

    HttpClient 4.2.1版本引入了一些重要的改进和修复,以提高性能和稳定性。以下是一些关键特性: 1. **连接管理**:HttpClient 4.2.1引入了更完善的连接管理机制,允许开发者控制连接的创建、复用和关闭。`...

    HttpClient 3.x to HttpComponents HttpClient 4.x

    例如,在HttpClient 3.x中,代码可能会使用`***mons.httpclient.HttpClient`类和`***mons.httpclient.methods.GetMethod`等,而在4.x版本中,这些都被新的API所替代。程序员需要熟悉`org.apache....

    httpclient4.2.1.zip

    本文将深入探讨HttpClient 4.2.1的核心特性和使用方法,帮助开发者更好地理解和应用这个强大的工具。 一、HttpClient简介 HttpClient是一个开放源码的Java库,由Apache软件基金会维护。它为Java程序员提供了一个...

    httpClient

    HttpClient httpClient = new HttpClient(); // 设置 Http 连接超时为5秒 httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(5000); /* 2 生成 GetMethod 对象并设置参数 */ GetMethod ...

    httpclient方式调用url

    本篇文章将深入探讨如何使用HttpClient方式调用URL,以及相关的知识点。 首先,HttpClient允许我们构建复杂的HTTP请求,包括GET、POST以及其他HTTP方法。使用HttpClient调用URL的基本步骤包括创建HttpClient实例、...

    httpclient-4.5.6-API文档-中文版.zip

    赠送jar包:httpclient-4.5.6.jar; 赠送原API文档:httpclient-4.5.6-javadoc.jar; 赠送源代码:httpclient-4.5.6-sources.jar; 赠送Maven依赖信息文件:httpclient-4.5.6.pom; 包含翻译后的API文档:httpclient...

    HttpClientHelper 工具类

    HttpClientHelper 对这个类进行了封装,使得开发者无需直接与HttpClient接口打交道,而是通过更简洁、易用的方法调用来实现网络通信。这提高了代码的可读性和可维护性。 单例模式是软件设计模式的一种,确保一个类...

    httpclient

    使用HttpClient发送请求、接收响应很简单,一般需要如下几步即可。 1. 创建HttpClient对象。 2. 创建请求方法的实例,并指定请求URL。如果需要发送GET请求,创建HttpGet对象;如果需要发送POST请求,创建...

    httpClient实例httpClient调用 http/https实例 忽略SSL验证

    这个实例主要涉及如何配置HttpClient来忽略SSL(Secure Socket Layer)验证,这对于在开发和测试环境中处理自签名证书或未认证的服务器非常有用。以下将详细介绍HttpClient的使用以及如何进行SSL验证的忽略。 首先...

    httpClient需要的jar包

    本压缩包文件"httpClient"很可能包含了HttpClient库所需的必备JAR文件,这些文件通常包括HttpClient的核心库、依赖的第三方库以及可能的扩展模块。为了正确使用HttpClient,你需要确保将这些JAR文件添加到你的项目类...

    HttpClient 调用WebService示例

    在本文中,我们将深入探讨如何使用HttpClient调用WebService。 首先,调用WebService通常涉及SOAP(Simple Object Access Protocol)或RESTful API。HttpClient可以处理这两种类型的Web服务。在本示例中,我们假设...

    httpClient组合包.zip

    此外,HttpClient还支持异步操作,可以在多线程环境中高效地处理并发请求。 2. **httpcore-4.4.12.jar**:这是HttpClient的核心库,包含了HTTP协议的基本组件,如连接管理、请求和响应模型、编码器和解码器等。...

    HttpClient所需jar包(全) httpClient.4.13jar

    HttpClient 4.13版本是这个库的一个较新版本,包含了一系列的改进和修复。 在Java开发中,HttpClient是一个常用的工具,尤其在处理Web服务或者API调用时。它支持同步和异步操作,可以处理复杂的HTTP协议细节,使...

    httpclient-4.5.5-API文档-中文版.zip

    赠送jar包:httpclient-4.5.5.jar; 赠送原API文档:httpclient-4.5.5-javadoc.jar; 赠送源代码:httpclient-4.5.5-sources.jar; 包含翻译后的API文档:httpclient-4.5.5-javadoc-API文档-中文(简体)版.zip ...

    HTTPClient 的一个封装

    这个“HTTPClient的一个封装”显然指的是对Apache HttpClient库进行了定制化处理,以适应特定项目需求或者简化API使用。下面将详细讨论HttpClient的核心概念、封装的目的以及可能实现的方式。 HttpClient是Apache...

    httpclient-4.5.13-API文档-中英对照版.zip

    赠送jar包:httpclient-4.5.13.jar; 赠送原API文档:httpclient-4.5.13-javadoc.jar; 赠送源代码:httpclient-4.5.13-sources.jar; 赠送Maven依赖信息文件:httpclient-4.5.13.pom; 包含翻译后的API文档:...

    HTTPClient

    ### HTTPClient知识点详解 #### 1. HttpClient4 – 获取状态码 **1.1 概览** 本节将详细介绍如何使用HttpClient 4.x版本来获取HTTP响应的状态码,并对其进行验证。这对于开发人员来说是一个非常实用的功能,可以...

    Java HttpClient 全部的jar包

    在Java项目中,使用HttpClient可以实现与Web服务器的高效通信。下面将详细介绍这12个jar包的作用及其在HttpClient中的功能: 1. `commons-beanutils-1.8.0.jar`: Apache Commons BeanUtils库提供了对Java Beans属性...

    使用HttpClient必须的jar包

    这些jar包包含了HttpClient的核心组件、依赖库和其他必要的工具,它们共同构成了HttpClient的运行环境。 以下是一些关键的HttpClient相关的知识点: 1. **HttpClient核心组件**:HttpClient的核心库`httpclient-x....

Global site tag (gtag.js) - Google Analytics