全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java模拟post请求发送json的例子

java模拟post请求发送json,用两种方式实现,第一种是HttpURLConnection发送post请求,第二种是使用httpclient模拟post请求,

方法一:

package main.utils;

import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;

public class HttpUtilTest {
  Log log = new Log(this.getClass());//初始化日志类
  /**
   * @作用 使用urlconnection
   * @param url
   * @param Params
   * @return
   * @throws IOException
   */
  public String sendPost(String url,String Params)throws IOException{
    OutputStreamWriter out = null;
    BufferedReader reader = null;
    String response="";
    try {
      URL httpUrl = null; //HTTP URL类 用这个类来创建连接
      //创建URL
      httpUrl = new URL(url);
      //建立连接
      HttpURLConnection conn = (HttpURLConnection) httpUrl.openConnection();
      conn.setRequestMethod("POST");
      conn.setRequestProperty("Content-Type", "application/json");
      conn.setRequestProperty("connection", "keep-alive");
      conn.setUseCaches(false);//设置不要缓存
      conn.setInstanceFollowRedirects(true);
      conn.setDoOutput(true);
      conn.setDoInput(true);
      conn.connect();
      //POST请求
      out = new OutputStreamWriter(
          conn.getOutputStream());
      out.write(Params);
      out.flush();
      //读取响应
      reader = new BufferedReader(new InputStreamReader(
          conn.getInputStream()));
      String lines;
      while ((lines = reader.readLine()) != null) {
        lines = new String(lines.getBytes(), "utf-8");
        response+=lines;
      }
      reader.close();
      // 断开连接
      conn.disconnect();

      log.info(response.toString());
    } catch (Exception e) {
    System.out.println("发送 POST 请求出现异常!"+e);
    e.printStackTrace();
    }
    //使用finally块来关闭输出流、输入流
    finally{
    try{
      if(out!=null){
        out.close();
      }
      if(reader!=null){
        reader.close();
      }
    }
    catch(IOException ex){
      ex.printStackTrace();
    }
  }

    return response;
  }
}

方法二:使用httpclient实现

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;

import main.utils.Log;

import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

//post请求方法
  public String sendPost(String url, String data) {
    String response = null;
    log.info("url: " + url);
    log.info("request: " + data);
    try {
      CloseableHttpClient httpclient = null;
      CloseableHttpResponse httpresponse = null;
      try {
        httpclient = HttpClients.createDefault();
        HttpPost httppost = new HttpPost(url);
        StringEntity stringentity = new StringEntity(data,
            ContentType.create("text/json", "UTF-8"));
        httppost.setEntity(stringentity);
        httpresponse = httpclient.execute(httppost);
        response = EntityUtils
            .toString(httpresponse.getEntity());
        log.info("response: " + response);
      } finally {
        if (httpclient != null) {
          httpclient.close();
        }
        if (httpresponse != null) {
          httpresponse.close();
        }
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
    return response;
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# java  # post  # 发送json  # java中post请求json  # java使用post发送json  # Java后台基于POST获取JSON格式数据  # java 通过发送json  # post请求  # 返回json数据的方法  # 浅谈Java代码的 微信长链转短链接口使用 post 请求封装Json(实例)  # java 实现通过 post 方式提交json参数操作  # 两种  # 第二种  # 第一种  # 大家多多  # HTTP  # BufferedReader  # null  # response  # httpUrl  # reader  # IOException  # throws  # return  # OutputStreamWriter  # sendPost  # String  # conn  # alive  # connection  # application 


相关文章: 制作网站的公司有哪些,做一个公司网站要多少钱?  如何用IIS7快速搭建并优化网站站点?  制作电商网页,电商供应链怎么做?  长沙企业网站制作哪家好,长沙水业集团官方网站?  模具网站制作流程,如何找模具客户?  宝塔面板如何快速创建新站点?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  建站主机是否属于云主机类型?  建站主机助手选型指南:2025年热门推荐与高效部署技巧  建站之星安装需要哪些步骤及注意事项?  开封网站制作公司,网络用语开封是什么意思?  高端建站三要素:定制模板、企业官网与响应式设计优化  建站之星×万网:智能建站系统+自助建站平台一键生成  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  个人摄影网站制作流程,摄影爱好者都去什么网站?  建站之星安装失败:服务器环境不兼容?  如何用5美元大硬盘VPS安全高效搭建个人网站?  用v-html解决Vue.js渲染中html标签不被解析的问题  建站主机核心功能解析:服务器选择与网站搭建流程指南  定制建站策划方案_专业建站与网站建设方案一站式指南  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  建站VPS推荐:2025年高性能服务器配置指南  h5网站制作工具有哪些,h5页面制作工具有哪些?  C#怎么创建控制台应用 C# Console App项目创建方法  如何在西部数码注册域名并快速搭建网站?  高端网站建设与定制开发一站式解决方案 中企动力  详解jQuery中基本的动画方法  深圳网站制作平台,深圳市做网站好的公司有哪些?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  手机网站制作与建设方案,手机网站如何建设?  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  如何在阿里云通过域名搭建网站?  建站主机无法访问?如何排查域名与服务器问题  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  如何有效防御Web建站篡改攻击?  建站之星免费模板:自助建站系统与智能响应式一键生成  制作公司内部网站有哪些,内网如何建网站?  如何在自有机房高效搭建专业网站?  如何通过NAT技术实现内网高效建站?  如何制作算命网站,怎么注册算命网站?  建站上传速度慢?如何优化加速网站加载效率?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  魔方云NAT建站如何实现端口转发?  网站网页制作专业公司,怎样制作自己的网页?  常州自助建站费用包含哪些项目?  建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略  如何挑选优质建站一级代理提升网站排名? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。