java模拟post请求发送json的例子
发布时间 - 2026-01-11 02:50:47 点击率:次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
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Linux系统运维自动化项目教程_Ansible批量管理实战
如何获取免费开源的自助建站系统源码?
,怎么在广州志愿者网站注册?
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
Laravel如何创建自定义中间件?(Middleware代码示例)
Laravel怎么为数据库表字段添加索引以优化查询
php打包exe后无法访问网络共享_共享权限设置方法【教程】
Laravel模型关联查询教程_Laravel Eloquent一对多关联写法
轻松掌握MySQL函数中的last_insert_id()
Laravel如何发送系统通知?(Notification渠道示例)
如何快速搭建支持数据库操作的智能建站平台?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
Laravel安装步骤详细教程_Laravel环境搭建指南
JavaScript Ajax实现异步通信
北京企业网站设计制作公司,北京铁路集团官方网站?
JavaScript如何操作视频_媒体API怎么控制播放
如何用免费手机建站系统零基础打造专业网站?
如何用景安虚拟主机手机版绑定域名建站?
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
如何在景安云服务器上绑定域名并配置虚拟主机?
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
文字头像制作网站推荐软件,醒图能自动配文字吗?
iOS正则表达式验证手机号、邮箱、身份证号等
Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】
如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
高端网站建设与定制开发一站式解决方案 中企动力
Laravel怎么使用Intervention Image库处理图片上传和缩放
Laravel如何创建自定义Facades?(详细步骤)
瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门
Laravel怎么生成URL_Laravel路由命名与URL生成函数详解
如何实现建站之星域名转发设置?
如何彻底删除建站之星生成的Banner?
Laravel Fortify是什么,和Jetstream有什么关系
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)
网站制作壁纸教程视频,电脑壁纸网站?
Android okhttputils现在进度显示实例代码
JS碰撞运动实现方法详解
如何在阿里云域名上完成建站全流程?
如何在宝塔面板中修改默认建站目录?
装修招标网站设计制作流程,装修招标流程?

