java35.HTTP通信------使用HttpClient进行Post方式通信
2016-02-21 23:15
369 查看
注:在上一个java.34工程中建类,才能使用apche库
代码:
import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; public class TestPost { public static void main(String[] args) { // 网络读写接口,来自有道翻译 // http://fanyi.youdao.com/openapi.do? // keyfrom=CLP-test&key=1870425496&type=data&doctype=xml&version=1.1&q=welcome new Post().start(); } } class Post extends Thread { HttpClient client = HttpClients.createDefault(); public void run() { HttpPost post = new HttpPost("http://fanyi.youdao.com/openapi.do?"); try { // keyfrom=CLP-test&key=1870425496&type=data&doctype=xml&version=1.1&q=welcome List<BasicNameValuePair> parameters = new ArrayList<>(); // 所有entity键值对 parameters.add(new BasicNameValuePair("keyfrom", "CLP-test")); parameters.add(new BasicNameValuePair("key", "1870425496")); parameters.add(new BasicNameValuePair("type", "data")); parameters.add(new BasicNameValuePair("doctype", "xml")); parameters.add(new BasicNameValuePair("version", "1.1")); parameters.add(new BasicNameValuePair("q", "welcome")); post.setEntity(new UrlEncodedFormEntity(parameters, "UTF-8")); // client.execute(post)之前,需要为post指定提交的数据 HttpResponse response = client.execute(post); HttpEntity entity = response.getEntity(); String result = EntityUtils.toString(entity, "UTF-8"); System.out.println(result); } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
运行结果:
相关文章推荐
- 前端开发必备!Emmet使用手册(转自 http://www.w3cplus.com/tools/emmet-cheat-sheet.html)
- keepalived(nginx)+httpd实现动静分离
- Sublime text 3 中Package Control 的安装与使用方法(转自 http://devework.com/sublime-text-3-package-control.html)
- java34.HTTP通信------使用HttpClient进行Get方式通信
- 开源一个网络图片浏览器HooPhotoBrowser
- okhttp
- Unity使用protobuf-net实现的网络框架
- iscsi 挂载网络存储及存储访问
- Sublime Text 3 破解版 + 注册机 + 汉化包(转自 http://www.cnsecer.com/251.html)
- sublime text 3(Build 3103)最新注册码(转自 http://blog.csdn.net/the_victory/article/details/50681152)
- 常见HTTP状态码
- android基础之二——网络编程(二)
- jQuery layer弹出层插件 http://layer.layui.com/直接上官网学
- Android基础之二——网络编程(一)
- Java网络编程
- IP地址,子网掩码,网关,默认网关
- TCP与UDP的区别
- ANDROID_MARS学习笔记_S04_004_用HTTPCLENT发带参数的get和post请求
- 【巨坑】【网络流】线性规划与网络流24题
- 使用httpClient联网请求数据