HttpClient get和HttpClient Post请求的方式获取服务器的返回数据
1.转自:https://blog.csdn.net/alinshen/article/details/78221567?utm_source=blogxgwz4
/*
* 演示通过HttpClient get请求的方式获取服务器的返回数据
*/
- public class HttpClientDemo {
- public static void main(String[] args) throws ClientProtocolException, IOException {
- String path="http://10.0.184.105:58080/ServletDemo4/LoginServlet?username=admin&password=admin";
- //1.创建客户端访问服务器的httpclient对象 打开浏览器
- HttpClient httpclient=new DefaultHttpClient();
- //2.以请求的连接地址创建get请求对象 浏览器中输入网址
- HttpGet httpget=new HttpGet(path);
- //3.向服务器端发送请求 并且获取响应对象 浏览器中输入网址点击回车
- HttpResponse response=httpclient.execute(httpget);
- //4.获取响应对象中的响应码
- StatusLine statusLine=response.getStatusLine();//获取请求对象中的响应行对象
- int responseCode=statusLine.getStatusCode();//从状态行中获取状态码
- if(responseCode==200){
- //5.获取HttpEntity消息载体对象 可以接收和发送消息
- HttpEntity entity=response.getEntity();
- //EntityUtils中的toString()方法转换服务器的响应数据
- String str=EntityUtils.toString(entity, "utf-8");
- System.out.println("服务器的响应是:"+str);
- // //6.从消息载体对象中获取操作的读取流对象
- // InputStream input=entity.getContent();
- // BufferedReader br=new BufferedReader(new InputStreamReader(input));
- // String str=br.readLine();
- // String result=new String(str.getBytes("gbk"), "utf-8");
- // System.out.println("服务器的响应是:"+result);
- // br.close();
- // input.close();
- }else{
- System.out.println("响应失败!");
- }
- }
- }
/*
* 演示HttpClient使用Post提交方式提交数据
* <form action="" method="post">
* <input type="text" name="username" value="输入值">
* <input type="password" name="password" value="输入值">
* </form>
*
* username=输入值 password=输入值
*/
- public class HttpClientDemo4 {
- public static void main(String[] args) throws ClientProtocolException, IOException {
- String baseUrl="http://10.0.184.105:58080/ServletDemo4/LoginServlet";//username=? password=?
- HttpClient httpclient=new DefaultHttpClient();
- //以请求的url地址创建httppost请求对象
- HttpPost httppost=new HttpPost(baseUrl);
- //NameValuePair 表示以类的形式保存提交的键值对
- NameValuePair pair1=new BasicNameValuePair("username", "ad");
- NameValuePair pair2=new BasicNameValuePair("password", "admin");
- //集合的目的就是存储需要向服务器提交的key-value对的集合
- List<NameValuePair> listPair=new ArrayList<NameValuePair>();
- listPair.add(pair1);
- listPair.add(pair2);
- //HttpEntity 封装消息的对象 可以发送和接受服务器的消息 可以通过客户端请求或者是服务器端的响应获取其对象
- HttpEntity entity=new UrlEncodedFormEntity(listPair);//创建httpEntity对象
- httppost.setEntity(entity);//将发送消息的载体对象封装到httppost对象中
- HttpResponse response=httpclient.execute(httppost);
- int responseCode=response.getStatusLine().getStatusCode();
- if(responseCode==200){
- //得到服务器响应的消息对象
- HttpEntity httpentity=response.getEntity();
- System.out.println("服务器响应结果是:"+EntityUtils.toString(httpentity, "utf-8"));
- }else{
- System.out.println("响应失败!");
- }
- }
- }
HttpClient get和HttpClient Post请求的方式获取服务器的返回数据的更多相关文章
- php 请求另一个服务器接口返回数据
<?php /** * Created by PhpStorm. * User: thinkpad * Date: 2015/7/17 0017 * Time: 13:24 */ class A ...
- IOS开发之Post 方式获取服务器数据
//1.创建post方式的 参数字符串url +(NSString *)createPostURL:(NSMutableDictionary *)params { NSString *postStri ...
- 使用基于Android网络通信的OkHttp库实现Get和Post方式简单操作服务器JSON格式数据
目录 前言 1 Get方式和Post方式接口说明 2 OkHttp库简单介绍及环境配置 3 具体实现 前言 本文具体实现思路和大部分代码参考自<第一行代码>第2版,作者:郭霖:但是文中讲 ...
- PHP通过curl向其它服务器发请求并返回数据
在很多时候,我们都需要请求第三方的服务器来获取一些数据,比如token,比如百度的主动推送,那么我们的php如何实现向第三方服务器发请求呢?我们可以通过curl来实现 首先定义请求的url,然后创建h ...
- JS请求服务器,并返回信息,请求过程中不需要跳转页面
js请求服务器,并返回信息,请求过程中不需要跳转页面 这个可以通过jQuery框架轻松实现,jQuery中包含多种ajax的请求方式,详细可以参考下对应 的API. 你上面定义的按钮类型是submit ...
- C#如何通过Socket的方式获取httponly cookie
正常情况下C#可以使用HttpWebRequest.HttpWebResponse和CookieContainer类来获取Cookie,但是当Cookie设置为httponly,我们就不能用上面的方法 ...
- Android使用HttpClient以Post、Get请求服务器发送数据的方式(普通和json)
讲这个之前,我们先来说说get和post两种请求的区别吧!!! 1. GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.jsp?name=te ...
- HttpClient发送Get和Post请求
package JanGin.httpClient.demo; import java.io.IOException; import java.io.UnsupportedEncodingExcept ...
- 使用HttpClient来异步发送POST请求并解析GZIP回应
.NET 4.5(C#): 使用HttpClient来异步发送POST请求并解析GZIP回应 在新的C# 5.0和.NET 4.5环境下,微软为C#加入了async/await,同时还加入新的Syst ...
随机推荐
- linux下使用convert命令修改图片分辨率【转】
本文转载自:http://blog.csdn.net/mybelief321/article/details/9969949 Convert的resize子命令应该是在ImageMagick中使用较多 ...
- ubuntu16.04下配置caffe无GPU
1. 安装依赖项 1 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5- ...
- js写发布微博文本框---2017-04-14
实现效果: 1.文本框输入内容,低端字数对应减少 2.当文本框内容超出时,会显示字数超出多少 效果图如下: 实现代码: <!DOCTYPE html><html> <he ...
- MSSQL执行大脚本文件时,提示“内存不足”的解决办法
导出了一个脚本文件,将近900M,回来往sql studio一丢,报了个内存不足,然后就有了此文.. 问题描述: 当客户服务器不允许直接备份时,往往通过导出数据库脚本的方式来部署-还原数据库, 但是当 ...
- USACO Sabotage, 2014 Mar 破坏阴谋(二分+贪心)
一开始看完这题就有个想法: 只要把大于整个序列平均数的最大连续序列就是最优? 那把整个序列都减掉平均数 在做最大连续字序列和且记录长度? 仔细思考一下并不太对: 当子序列最大但长度较大 也许也比不上删 ...
- javascript中DOM基础知识介绍
1.1. 基本概念 1.1.1. DOM DOM Document Object Model 文档对象模型 就是把HTML文档模型化,当作对象来处理 DOM提供的一系列属性和方法可以 ...
- 使用css选择器来定位元素
public void CSS(){ driver.get(Constant.baidu_url); //绝对路径 // driver.findElement(By.cssSelector(" ...
- 使用Eclipse将项目上传至远程GitLab
一.先将项目提交至本地仓库 1. 右击项目——Team——Share Project… 2.在弹出框中,选择Git——Next 3.在弹出框中进行如下步骤操作 4.至此,我们已经成功创建了本地GIT ...
- JSP获取json格式的数据报错 Uncaught SyntaxError: Unexpected identifier
后台json字符串是 {"id":"cmdb_ci.`fully_qualified_domain_name`","field":" ...
- (4)pyspark---dataframe清理
1.交叉表(crosstab): pandas中也有,常和pivot_table比较. 查看家庭ID与评分的交叉表: 2.处理缺失值:fillna withColumn:新增一列数据 cast : 用 ...