java如何发起一个post请求,并发送json数据呢?

乔欣 Java经验 发布时间:2023-02-10 22:22:05 阅读数:9933 1
下文笔者讲述使用java代码发送post请求的示例分享

java发起post请求的实现思路

实现思路:
   1.引入hutool工具类
   2.组合一个JSONObject对象
   3.定义表头为Content-Type为application/json类型
   4.发送数据
例:发送post请求,并发送json数据
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;

public JSONObject sendPost(String url, LoginSsoReq req){
        HttpResponse httpResponse = null;
        try {
            JSONObject json=new JSONObject();
            json.put("name","json值姓名");
            json.put("age",18);
            json.put("info","这是json信息"); 
            // 设置请求头
            Map<String, String > heads = new HashMap<>();
            heads.put("Content-Type", "application/json;charset=UTF-8");
            httpResponse =  HttpRequest.post(url) // url
                    .headerMap(heads, false) // 请求头设置
                    .body(json.toJSONString()) // json参数
                    .timeout(5 * 60 * 1000) // 超时
                    .execute(); // 请求
            log.info("获取返回服务器的状态码:----- " + httpResponse.getStatus() );
            if(httpResponse.getStatus() == 200){
                //成功后响应数据
                String result = httpResponse.body();
                JSONObject jsonResult = JSONObject.parseObject(result);
                log.info("接口返回数据:"+jsonResult.toString());
                return jsonResult;
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally{
            try {
                //释放连接
                if(httpResponse != null){
                    httpResponse.close();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return new JSONObject();
    }
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202302/16760395405734.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者