HttpClient的简单使用
来源:互联网 发布:c语言模块化程序设计 编辑:程序博客网 时间:2024/05/17 02:24
由于这个API已经被关闭 在Studio使用时 需要在Gradle里面找到本工程 添加一行代码,才能使用,如下:android { useLibrary 'org.apache.http.legacy'}get请求/** * 用用HttpClient查询天气信息 聚合数据---->全国天气预报接口 * */public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } //点击事件 获取天气信息 public void httpClientGetRequest(View view){ new Thread(){ @Override public void run() { super.run(); getWeather(); } }.start(); } //用HttpClient获取天气信息 public void getWeather(){ try { //实例化对象 相当于打开浏览器 //HttpClient其实是一个接口 DefaultHttpClient是其实现类 HttpClient client = new DefaultHttpClient(); //请求地址 :可以分为两部分 //1:接口信息 //2:参数信息 HttpGet httpGet = new HttpGet("http://v.juhe.cn/weather/index?format=2&cityname="+ URLEncoder.encode("北京","utf-8")+"&key=01b3d0d1bb6251f441ffe18a07ad655c"); //建立连接 HttpResponse response = client.execute(httpGet); int code = response.getStatusLine().getStatusCode(); if (code == 200){ InputStream is = response.getEntity().getContent(); String json = StreamTOString.readFromNetWork(is); Log.e( "-----------", json); } } catch (IOException e) { e.printStackTrace(); } }}post请求/** * 用用HttpClient查询菜谱信息 聚合数据---->菜谱大全接口 * */public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void btnHttpClientPost(View v){ new Thread(){ @Override public void run() { super.run(); // httpClientPostReqeust("红烧肉","a7a42220c5c1c5268be7ba25af764f6c"); httpClientPostReqeust("ed1088c0c4ac34c42a270fabf0de9b5a"); } }.start(); } /** * * httpClietnt API 的pOST方式拉去数据 * */ private String httpClientPostReqeust(String key) { try { //默认 取消对HttpClient的一个支持 //1.打开浏览器 HttpClient httpClient = new DefaultHttpClient(); //2.填下地址 HttpPost httpPost = new HttpPost("http://v.juhe.cn/WNXG/city"); //httpPost.addHeader("token","123544"); //设置请求参数 List<BasicNameValuePair> paramters = new ArrayList<>(); //只是添加一个了参数 //paramters.add(new BasicNameValuePair("menu", menu)); paramters.add(new BasicNameValuePair("key", key)); httpPost.setEntity(new UrlEncodedFormEntity(paramters)); //key=43434&name=zhangsan //3.回车 HttpResponse httpResponse = httpClient.execute(httpPost); //等待服务器响应 //200 成功 404 资源没找到 500 服务内部错误 int code = httpResponse.getStatusLine().getStatusCode(); if (code == HttpStatus.SC_OK) { //获取服务的响应内容 InputStream is = httpResponse.getEntity().getContent(); String json = StreamTools.readFromNetWork(is); System.out.println("http post 请求结果 : " + json); return json; } } catch (Exception e) { e.printStackTrace(); } return null; }}
0 0
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient的简单使用
- HttpClient TabLayout的简单使用
- Apache的httpclient的简单使用
- android中使用HttpClient的简单例子
- HttpClient的简单使用--HttpGET和HttpPost
- 简单的使用HttpClient访问网络
- WebView,HttpURLConnection,HttpClient的简单使用
- HttpClient-4.2.4的使用(简单用法)
- tp5 cache缓存简单使用
- LeetCode:60. Permutation Sequence,全排列的第n个子列
- uva 11021 数学概率 麻球
- Dubbo入门学习--协议及注册中心
- 心理学
- HttpClient的简单使用
- c++并发初步学习(1)
- 剑指offer-36.两个链表的第一个公共结点
- Python(12):通过CMD向python传参数
- 学习笔记:The Log(我所读过的最好的一篇分布式技术文章)
- 提取文件夹中.lib文件名到文本中
- php 处理伪静态--通过正则表达式分析伪静态URL地址
- dao层sql
- 建立员工表并完成相应操作