Java - 发送 HTTP 请求的及其简单的方法模块 - hutool

news/2024/10/23 9:33:03/

目录

  • 一、POST 传递简单的字符串内容 .body(params)
  • 二、POST 传递 Json 数据,以表单类型传递 .form(params)
  • 二、POST 传递 Json 数据,以表单类型传递 .form(params) 和 .body(params) 方法效果等效的思路
  • 四、传统接口带 token 验证的代码模板
  • 参考链接

一、POST 传递简单的字符串内容 .body(params)

演示代码

import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import cn.hutool.http.HttpRequest;
/*** cf*/
public class TqOdpServiceClient {private static String url="url";;public static String execute(String http,String params) {JSONObject response = JSONObject.parseObject(HttpRequest.post(http + url).body(params).execute().body());return response;}
}

二、POST 传递 Json 数据,以表单类型传递 .form(params)

演示代码

import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import cn.hutool.http.HttpRequest;
/*** cf*/
public class TqOdpServiceClient {private static String url="url";;public static String execute(String http) {HashMap<String, Object> params = new HashMap<>(2);params.put("test1", "测试数据");params.put("test2", "测试数据");JSONObject response = JSONObject.parseObject(HttpRequest.post(http + url).form(params).execute().body());return response;}
}

二、POST 传递 Json 数据,以表单类型传递 .form(params) 和 .body(params) 方法效果等效的思路

演示代码:可以看到 String newParams = JSON.toJSONString(params);将 HashMap 类型的数据转换为字符串类型,就可以作为字符串被传递到 body 内,后面就是对应接口的后端数据处理问题了。

import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import cn.hutool.http.HttpRequest;
/*** cf*/
public class TqOdpServiceClient {private static String url="url";;public static String execute(String http) {HashMap<String, Object> params = new HashMap<>(2);params.put("test1", "测试数据");params.put("test2", "测试数据");String newParams = JSON.toJSONString(params);JSONObject response = JSONObject.parseObject(HttpRequest.post(http + url).body(newParams).execute().body());return response;}
}

四、传统接口带 token 验证的代码模板


import cn.hutool.http.Header;
import cn.hutool.http.HttpRequest;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;/*** cf*/
public class TqOdpServiceClient {private static String url="url";;public static String execute(String http, String accessToken) {JSONObject response = JSONObject.parseObject(HttpRequest.get(http + url).header(Header.AUTHORIZATION, "Bearer ".concat(accessToken)).execute().body());return response;}
}

参考链接

java】hutool发送http请求,配置ssl忽略

SpringBoot 项目使用hutool 工具进行 http 接口调用的处理方法


http://www.ppmy.cn/news/1152791.html

相关文章

为什么手机会莫名多出许多软件?

许多手机用户都曾遭遇过这样的问题&#xff0c;他们在使用手机的过程中&#xff0c;突然发现手机屏幕上出现了一些未知的软件。这些软件并非他们主动下载的&#xff0c;但它们却显现在屏幕上。这些软件从何而来&#xff1f; 其实&#xff0c;这些软件往往是在浏览网页、阅读小…

Chrome 同站策略(SameSite)问题

问题产生 问题复现&#xff1a; A项目页面使用 iframe 引用了B项目 B项目登录页面输入账号密码后点击登录 无法跳转 尝试解决&#xff1a; 在B项目修改了跳转方式 但无论是 this.$router.push 还是 window.herf 都无法实现跳转在iframe中使用 sandbox 沙箱属性 同样无法实现跳…

龙迅LT86102UXE HDMI2.0转二路HDMI2.0/1.4,支持音频剥离,支持4K60HZ

龙迅LT86102UXE 1.描述&#xff1a; 龙迅 LT86102UXE HDMI2.0 分路器具有符合 HDMI2.0/1.4 规范的 1&#xff1a;2 分路器、最大 6Gbps 高速 数据速率、自适应均衡 RX 输入和预加重 TX 输出&#xff08;用于支持长电缆应用&#xff09;、内部 TX 通道交换以 实现灵活的 PCB…

利用人工智能提升企业培训的个性化体验

随着科技的不断进步&#xff0c;人工智能&#xff08;AI&#xff09;正逐渐渗透到各个领域。而在企业培训领域&#xff0c;人工智能也展现出了巨大的潜力。利用人工智能技术的企业培训系统&#xff0c;企业可以为员工提供个性化、高效的培训体验&#xff0c;进一步提升他们的专…

001flutter基础学习

flutter基础学习 参考:https://book.flutterchina.club/chapter1/flutter_intro.html Flutter是谷歌的移动UI框架跨平台: Linux,Android, IOS,Fuchsia原生用户界面:它是原生的,让我们体验更好,性能更好开源免费&#xff1a;完全开源,可以进行商用Flutter与主流框架的对比 Cor…

标定板生成网址,可以直接打印,matlab标定工具箱

Camera Calibration Pattern Generator – calib.io matlab 打开标定的成像 cameraCalibrator 点击完成之后 命令行中输入 cameraParams.IntrinsicMatrix

SAAS模式和本地化部署哪种更好?

导 读 ( 文/ 1798 ) 在制造执行系统&#xff08;MES&#xff09;的选择和部署过程中&#xff0c;企业面临着SAAS&#xff08;软件即服务&#xff09;模式和本地化部署两种选择。SAAS模式以云端服务的形式提供MES系统&#xff0c;而本地化部署则将系统部署在企业自身的服务器上。…

STM32_PID通用算法增量式和位置式

STM32_PID通用算法增量式和位置式 前言&#xff1a; 此算法为入门级PID算法&#xff0c;调试好参数后可应用于温度控制、舵机控制、直流电机的转速控制和直流电机的角度控制等等&#xff0c;下面就以温度控制举例 pid.c #include "pid.h" #include "sensor.h&q…