淘先锋技术网

首页 1 2 3 4 5 6 7

忘了 postman 是被谁种草的,很长一段时间内 postman 都是我做接口测试的首选工具,之前也有小伙伴跟我安利过 IDEA 中的 RestfulToolkit 插件,但是一直没机会体验,最近抽空玩了一把,感觉在某些场景下还蛮不错的(不需要认证的场景下),和小伙伴们分享下。

1. RestfulToolkit

RestfulToolkit 是一套 RESTful 服务开发辅助工具集,它主要提供了如下功能:

  1. 根据 URL 直接跳转到对应的方法定义 ( Ctrl \ or Ctrl Alt N );
  2. 提供了一个 Services tree 的显示窗口;
  3. 一个简单的 http 请求工具;
  4. 在请求方法上添加了有用功能: 复制生成 URL;,复制方法参数…
  5. 其他功能: java 类上添加 Convert to JSON 功能,格式化 json 数据 ( Windows: Ctrl + Enter; Mac: Command + Enter )。

它支持 Spring 体系 (Spring MVC / Spring Boot 1.x,2.x);支持 JAX-RS;支持 Java 和 Kotlin 语言。

2. 安装

在 IDEA 中选择 File->Plugins,然后搜索 RestfulToolkit,如下:

然后点击 install 按钮即可,安装完成后重启 IDEA 即可:

3. 使用

创建一个项目,在项目的右边可以看到 Rest Services 选项,如下:

点开该选项卡,就可以进行 RESTful 接口测试了。

松哥写了四个测试接口,大家来看一下:

@RestController
public class BookController {
    @PostMapping("/book")
    public RespBean addBook(Book book) {
        System.out.println(book);
        return RespBean.ok("添加成功");
    }

    @GetMapping("/book/{id}")
    public Book getBookById(@PathVariable Integer id) {
        Book book = new Book();
        book.setId(id);
        return book;
    }

    @PutMapping("/book")
    public RespBean updateBook(@RequestBody Book book) {
        return RespBean.ok("更新成功");
    }

    @DeleteMapping("/book")
    public RespBean deleteBookById(Integer id) {
        return RespBean.ok("删除成功");
    }
}

这四个借口基本上涵盖了我们日常常见的传参方式,启动项目,我们来看下右边:

可以看到,项目启动成功后,四个测试接口都会在 RestfulToolkit 工具中展示出来:

并且不同的接口,都有对应的默认参数,例如更新接口,参数是 JSON 格式,这里就会自动列出来:

开发者只需要根据实际情况重新填一下具体的参数值即可。

测试成功,结果如下:

RestfulToolkit 有一个功能,就是点击接口,可以跳转到对应的方法定义上,如下:

选中接口,右键单击,有两个选项:

  • Copy Full Url:拷贝完整的 URL 地址。
  • Jump to Source:跳转到接口定义的代码处。

除了这个,RestfulToolkit 还能帮我们根据一个类,快速转换为 JSON,有时候我们用 postman 测试的时候,自己写 JSON 太慢了,这是一个好办法,具体操作如下:

选中类名,右键单击,最上面有两个选项,如下:

  • Convert to JSON(Compressed):生成一个压缩后的 JSON,其实就是一行 JSON。
  • Convert to JSON:生成一个带格式的 JSON。

4. 一个题外话

有的小伙伴可能会问,用 RestfulToolkit 的话,基于 Cookie+Session 的认证怎么办?其实,一个合格的 RESTful 接口,本身就是无状态的,既然是无状态的,那么认证就不需要 Cookie 了,每个请求都自己带上令牌就行了,反正 RestfulToolkit 也支持修改请求头。

不过话说回来,如果你的项目就是基于 Cookie + Session 认证的,那么接口测试,我还是建议使用 postman,毕竟这个工具更专业。或者你也可以试试 IDEA 自带的 Http Client 工具,如下图:

好啦,今天和小伙伴们分享了一个小工具,感兴趣的小伙伴可以去体验一把啦~对了,2020 版之后的 IDEA 可以使用 Restful Tools。