Hutool的Http调用简单使用

这篇具有很好参考价值的文章主要介绍了Hutool的Http调用简单使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Hutool的Http调用简单使用

Http调用

http调用即通过http方式调用第三方接口,现成的工具库有很多,如HttpClient、RestTemplate、OKHttp,今天主要介绍Hutool-http

前置环境

Spring Initializr初始化项目 选择Spring Web和Lombok依赖 Java版本1.8

application.yml配置如下:

server:
  servlet:
    context-path: /api
  port: 8123

引入Hutool依赖:

  <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.8.15</version>
  </dependency>

先写一个简单的被调用接口

主要功能就是:

  • GET调用返回名字
  • POST调用返回名字
  • POST调用返回User对象

Controller

package com.zd.zdinterface.controller;

import com.zd.zdinterface.model.User;
import org.springframework.web.bind.annotation.*;

/**
 * 查询名称
 * @author zd
 */
@RestController
@RequestMapping("/name")
public class NameController {
    @GetMapping("/")
    public  String getNameByGet(String name) {
        return "GET 你的名字是:" + name;
    }
    @PostMapping("/")
    public  String getNameByPost(@RequestParam String name) {
        return "Post 你的名字是:" + name;
    }
    @PostMapping("/user")
    public  String getUserNameByPost(@RequestBody User user) {
        return user.getUsername();
    }
}

User:

package com.zd.zdinterface.model;

import lombok.Data;

@Data
public class User {
    private String username;
}

开始调用

先写一个简单的Client类

Client:

package com.zd.zdinterface.client;

import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import com.zd.zdinterface.model.User;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.HashMap;

public class ZdApiClient {
    //调用接口方法一
    public  String getNameByGet(String name) {
        HashMap<String, Object> paramMap = new HashMap<>();
        paramMap.put("name", name);

        String result3= HttpUtil.get("http://localhost:8123/api/name/", paramMap);
        System.out.println(result3);
        return  result3;
    }
    //调用接口方法二
    public  String getNameByPost(@RequestParam String name) {
        HashMap<String, Object> paramMap = new HashMap<>();
        paramMap.put("name", name);

        String result3= HttpUtil.post("http://localhost:8123/api/name/", paramMap);
        System.out.println(result3);
        return  result3;
    }
    //调用接口方法三
    public  String getUserNameByPost(@RequestBody User user) {
        String json = JSONUtil.toJsonStr(user);
        HttpResponse httpResponse = HttpRequest.post("http://localhost:8123/api/name/user")
                .body(json)
                .execute();
        System.out.println(httpResponse.getStatus());
        String result = httpResponse.body();
        System.out.println(result);
        return result;
    }
}

为什么这样写?需要看官方文档:

Hutool官网

Hutool文档

其中包括安装

hutool.http,Java,http,java,spring

以及使用

hutool.http,Java,http,java,spring

测试

package com.zd.zdinterface;

import com.zd.zdinterface.client.ZdApiClient;
import com.zd.zdinterface.model.User;

public class Main {
    public static void main(String[] args) {
        ZdApiClient zdApiClient = new ZdApiClient();
        String res1 =  zdApiClient.getNameByGet("zd");
        String res2 =  zdApiClient.getNameByPost("zd");
        User user = new User();
        user.setUsername("zd");
        String res3 =   zdApiClient.getUserNameByPost(user);
        System.out.println(res1);
        System.out.println(res2);
        System.out.println(res3);
    }
}

结果

hutool.http,Java,http,java,spring
代码GitHub仓库文章来源地址https://www.toymoban.com/news/detail-595021.html

到了这里,关于Hutool的Http调用简单使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java通过hutool的HttpUtil来发送和获取远程http数据

    java通过hutool的HttpUtil来发送和获取远程http数据 导入如下jar包: 1 2 3 4 5 dependency      groupId cn.hutool/ groupId      artifactId hutool-all/ artifactId      version 5.7.1/ version / dependency 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 4

    2024年02月15日
    浏览(40)
  • 调用hutool包调用http接口处理文件流-文件的上传下载工具类

    hutool工具类get请求获取流: InputStream inputStream = HttpRequest.get(fileUrl).execute().bodyStream(); hutool工具类post请求上传文件流: String resp = HttpRequest.post(url).header(Header.CONTENT_TYPE.getValue(), ContentType.MULTIPART.getValue()).form(params).execute().body(); 完成代码

    2024年01月17日
    浏览(61)
  • java中使用hutool调用get请求,post请求

    一、hutool工具包实现 1、get请求 2、post请求 二、java net实现 1、java中http协议调用get请求 2、java中https协议调用get请求

    2024年02月11日
    浏览(41)
  • Java 使用hutool工具进行导出导入excel表格(代码很简单)

    创建一个Controller进行测试 

    2024年02月07日
    浏览(65)
  • 使用HuTool的Http工具发送post传递中文参数,请求会乱码的解决方法

    Hutool 是一款功能丰富、易用的Java工具类库,我们在工作中经常会使用它的各种类库方法简化我们的开发,其中我们甚至能通过它的Http工具类直接发送http的各种请求,下面来介绍一下发送post请求时参数中有中文出现乱码的解决方法。 这样就不会造成请求参数出现乱码问题

    2024年02月01日
    浏览(43)
  • 【高效开发工具系列】Hutool Http工具类

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年02月05日
    浏览(47)
  • 【Java 工具类 Hutool】项目中如何引入 Hutool 并正确使用它

    👉 博主介绍 : 博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,WEB架构师,阿里云专家博主,华为云云享专家,51CTO 专家博主 ⛪️ 个人社区 :个人社区 💞 个人主页 :个人主页 🙉 初级进阶地址 : ✅ Java 初级进阶路线 🙉 八股文专题 :

    2024年02月03日
    浏览(47)
  • cn.hutool.http.HttpException: Connection reset 问题解决

    项目A给项目B接口发送数据; 项目使用的是hutool的http工具类; 本地、测试环境均正常,生产出现了错误,明细: 生产环境接口测试没有问题; 在服务器同样可以ping通生产环境,排除白名单问题; 使用 timeout() 设置的超时时间,同样也记录了方法调用时间,均没有问题,并

    2024年02月13日
    浏览(49)
  • 记录hutool http通过代理模式proxy访问外面的链接

    效果: 代码:  如何获取代理端口:  

    2024年02月10日
    浏览(61)
  • hutool Http 工具发送POST请求的几种方式。

    Hutool是一个Java工具库,提供了丰富的功能模块,包括HTTP请求发送。以下是使用Hutool发送POST请求的几种方式: 使用HttpUtil.post方法: 使用HttpUtil.post方法可以发送简单的POST请求,示例如下: 使用HttpUtil.createPost方法: 使用HttpUtil.createPost方法可以创建一个HttpPost对象,然后设置

    2024年02月13日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包