1.post请求 参数为?a=1&b=2&c=3
2.post请求 参数为{“a”:1,“b”:2,“c”:3} JSON格式


package cn.test.test;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicHeader;
import org.apache.http.protocol.HTTP;import com.alibaba.fastjson.JSONObject;public class URLConnection {/*** post请求封装 参数为?a=1&b=2&c=3* @param path 接口地址* @param Info 参数* @return* @throws IOException*/public static JSONObject postResponse(String path,String Info) throws IOException{//1, 得到URL对象 URL url = new URL(path); //2, 打开连接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); //3, 设置提交类型 conn.setRequestMethod("POST"); //4, 设置允许写出数据,默认是不允许 false conn.setDoOutput(true); conn.setDoInput(true);//当前的连接可以从服务器读取内容, 默认是true //5, 获取向服务器写出数据的流 OutputStream os = conn.getOutputStream(); //参数是键值队  , 不以"?"开始 os.write(Info.getBytes()); //os.write("googleTokenKey=&username=admin&password=5df5c29ae86331e1b5b526ad90d767e4".getBytes()); os.flush();//6, 获取响应的数据 //得到服务器写回的响应数据 BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));String str = br.readLine();   JSONObject json = JSONObject.parseObject(str);System.out.println("响应内容为:  " + json); return  json;}/*** post请求封装 参数为{"a":1,"b":2,"c":3}* @param path 接口地址* @param Info 参数* @return* @throws IOException*/public static JSONObject postResponse(String path,JSONObject Info) throws IOException{HttpClient client = new DefaultHttpClient();HttpPost post = new HttpPost(path);post.setHeader("Content-Type", "application/json");post.addHeader("Authorization", "Basic YWRtaW46");String result = "";try {StringEntity s = new StringEntity(Info.toString(), "utf-8");s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json"));post.setEntity(s);// 发送请求HttpResponse httpResponse = client.execute(post);// 获取响应输入流InputStream inStream = httpResponse.getEntity().getContent();BufferedReader reader = new BufferedReader(new InputStreamReader(inStream, "utf-8"));StringBuilder strber = new StringBuilder();String line = null;while ((line = reader.readLine()) != null)strber.append(line + "\n");inStream.close();result = strber.toString();System.out.println(result);if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {System.out.println("请求服务器成功,做相应处理");} else {System.out.println("请求服务端失败");}} catch (Exception e) {System.out.println("请求异常");throw new RuntimeException(e);}return JSONObject.parseObject(result);}}
//main
public static void main(String[] args) {try {JSONObject json = new JSONObject();//第一种post请求 参数为 a=1&b=2&c=3json = URLConnection.postResponse("https://www.apiopen.top/weatherApi", "city=上海&&test=111");System.out.println("json的数据为:" + json);//第二种post请求 参数为 jsonjson.put("test", "参数1");json.put("test2", "参数2");json = URLConnection.postResponse("http://url", json);} catch (IOException e) {e.printStackTrace();}
}

Java post请求工具类相关推荐

  1. Java Https请求工具类

    个人技术网站 欢迎关注 由于微信API接口建议使用Https请求方式 而且过不久就废弃http请求方式了 所以提供以下Https工具类 public class SSLClient extends D ...

  2. JAVA http请求工具类http-request

    前言 在我们日常工作中,我们需要经常和第三方接口进行交互通信,很多时候我们都是使用http协议进行交互,java原生自带对http的支持(java.net.*),但是使用起来不太方便,除此之外,用的最 ...

  3. java http请求 工具类_java模拟http请求调用远程接口工具类

    package ln; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRea ...

  4. java接口请求工具类

    Maven添加第三方类库 在这里我传的参数是Json格式的. 下面是java代码: /**      * 招标接口输入参数,post请求      *      * @param json      ...

  5. java http请求 工具类_Java 实现 Http 请求工具类

    1 packagecom.demo.util;2 3 importjava.io.BufferedReader;4 importjava.io.IOException;5 importjava.io. ...

  6. 【Java】HTTP请求工具类

    前言 在工作中可能存在要去调用其他项目的接口,这篇文章我们实现在Java代码中实现调用其他项目的接口. 本章内容: 创建一个携带参数的POST请求,去请求其他项目的接口并返回数据. 附加HTTP请求工 ...

  7. Java 常用HTTP请求工具类HttpUtils

    .pom依赖 <!-- httpclient --><dependency><groupId>org.apache.httpcomponents</group ...

  8. Java使用hutool工具类发送http请求

    Java使用hutool工具类发送网络请求 引入jar包 pom.xml添加以下hutool依赖 <dependency><groupId>cn.hutool</grou ...

  9. Java封装OkHttp3工具类

    点击关注公众号,Java干货及时送达  作者:如漩涡 https://blog.csdn.net/m0_37701381 Java封装OkHttp3工具类,适用于Java后端开发者 说实在话,用过挺多 ...

  10. java downloadfile_FileDownload.java:文件下载工具类

    FileDownload.java:文件下载工具类 2017-04-25·Mr.Xia 4489 次浏览 文件下载功能的工具类 JavaWeb工具类目录 [http://baike.xsoftlab. ...

最新文章

  1. 苹果手机做文件服务器,iOS企业账号打包发布App到自己服务器上
  2. ccls提示找不到文件
  3. 学会python之后-【一点资讯】学会Python后,人生简直开挂了!
  4. CNVD-C-2019-48814 漏洞
  5. asp.net2.0导出pdf文件完美解决方案(转载)
  6. 使用for及递归求 1-100的和
  7. 使用互斥体使程序只运行一个
  8. linux下的Tomcat启动
  9. 五大“领跑者”光伏基地概览
  10. BI/数据仓库/数据分析 基础入门:一些常见概念解释
  11. 搭建JavaWeb项目时出现的问题
  12. C语言第五次博客作业---函数
  13. EditPlus v2.20 Build 205
  14. CentOS 7.4 安装Nginx
  15. 大数据学习开篇:了解大数据导论、清楚大数据应用领域和前景
  16. vue-cli脚手架中使用talkingData埋点的方法
  17. 抱薪者说 | 君莫:穿越山海,终成“C链小雷锋”
  18. c语言程序设计勘误,C语言程序设计勘误表.doc
  19. RAID磁盘阵列故障
  20. October 2009

热门文章

  1. 【STM32H7的DSP教程】第22章 DSP矩阵运算-放缩,乘法和转置矩阵
  2. GB50174《电子信息系统机房设计规范》福州再掀培训热潮
  3. 架构师原来是这样修炼出来的
  4. Opencv python之车辆识别项目(附代码)
  5. java sql 结果_Java 获取SQL查询语句结果
  6. IntelliJ IDEA 字体配置常用快捷键
  7. JavaWeb新闻发布系统案例1
  8. 轻松打造企业内部NOD32升级服务器
  9. 简单了解cms(内容管理系统)
  10. windows下安装MinGW及C++的环境配置