Skip to content
程序猿DD程序猿DD
主页
最新发布
Java新特性
玩转IDEA
旧版博客open in new window
社区交流open in new window
  • 基础配置

    • 新建项目的默认配置
      • 侧边栏显示文件更新时间
        • 护眼配置方案
        • 性能优化

          • 换M1芯片后的使用建议
            • 定制IDEA的内存设置
              • 内存和启动参数设置
              • 调试技巧

                • 条件断点
                  • 优雅地抛异常
                    • 操作回退:Reset Frame
                      • 操作回退:Jump To Line
                        • 优雅调试stream操作
                        • 重构技巧

                          • 编辑器

                            • Markdown编辑器
                            • 插件宝库

                              • Jump To Line:跳转任意行
                                • Java Stream调试插件
                                  • 代码缩略图:CodeGlance Pro
                                    • API调试:Restful Fast Request
                                      • 基础配置
                                        • String 生成配置
                                          • 类型映射配置
                                            • 调试 API
                                              • 下载文件
                                                • 保存 API
                                                  • SearchEveryWhere 支持
                                                    • 快速添加 Token 到 Header
                                                      • API 导出到 Postman
                                                        • APIs 列表
                                                          • API 导入导出
                                                            • Curl 拷贝
                                                              • Swagger 默认值解析支持
                                                                • API 自动生成注释
                                                                  • API 生成 Markdown 文档
                                                                    • API 预览
                                                                      • 项目全局参数
                                                                        • 自动 Cookie 存储
                                                                          • 历史请求预览
                                                                            • Html 预览
                                                                            • 文件树增强:Show Comment

                                                                            IDEA API调试插件:Restful Fast Request

                                                                            程序猿DD原创2022年5月25日
                                                                            • IntelliJ IDEA
                                                                            大约 5 分钟

                                                                            此页内容
                                                                            • 基础配置
                                                                            • String 生成配置
                                                                            • 类型映射配置
                                                                            • 调试 API
                                                                            • 下载文件
                                                                            • 保存 API
                                                                            • SearchEveryWhere 支持
                                                                            • 快速添加 Token 到 Header
                                                                            • API 导出到 Postman
                                                                            • APIs 列表
                                                                            • API 导入导出
                                                                            • Curl 拷贝
                                                                            • Swagger 默认值解析支持
                                                                            • API 自动生成注释
                                                                            • API 生成 Markdown 文档
                                                                            • API 预览
                                                                            • 项目全局参数
                                                                            • 自动 Cookie 存储
                                                                            • 历史请求预览
                                                                            • Html 预览

                                                                            # IDEA API调试插件:Restful Fast Request

                                                                            目前 SpringBoot 系列框架非常流行,大多数开发都是基于前后端分离的模式进行开发,这种过程中势必会涉及到大批量的 API 调试,到目前为止,IntelliJ IDEA 是 Java 软件开发最多使用的开发工具,最近我在 IntelliJ IDEA 插件市场下找到了一块非常好用的插件 Restful Fast Request,细节非常到位,说它是 IDEA 版的 Postman 也不为过,推荐给大家!

                                                                            # 什么是 Restful Fast Request

                                                                            Restful Fast Request 是 idea 版 Postman。它是一个强大的 restful api 工具包插件,可以根据已有的方法帮助您快速生成 url 和 params。 Restful Fast Request = API调试工具 + API管理工具 + API搜索工具。它有一个像 Postman 一样界面来完成请求、检查服务器响应、存储你的 api 请求和导出 api 请求。插件帮助你在 IDEA 界面内更快更高效地调试你的 API

                                                                            # 支持的框架

                                                                            Spring 体系 (Spring MVC / Spring Boot)
                                                                            Kotlin (Spring MVC / Spring Boot)
                                                                            JAX-RS
                                                                            

                                                                            # 安装

                                                                            • 方式 1 (推荐): IDEA 插件市场搜索 Restful Fast Request
                                                                            • 方式 2: https://plugins.jetbrains.com/plugin/16988-restful-fast-requestopen in new window

                                                                            图 1

                                                                            # 配置

                                                                            # 基础配置

                                                                            刚开始使用需要配置项目名 [例如 card]、环境名 [例如 local、dev],然后配置对应的域名

                                                                            图 2

                                                                            # String 生成配置

                                                                            可以使得生成出来的字符串随机动态

                                                                            策略
                                                                            * name+random(字段名加随机字符串)
                                                                            * random(随机字符串)
                                                                            * none(不生成)
                                                                            

                                                                            图 3

                                                                            # 类型映射配置

                                                                            参考

                                                                            https://dromara.gitee.io/fast-request/guide/getstarted/dataMapping.html

                                                                            # 使用

                                                                            # 调试 API

                                                                            点击接口左侧的小火箭按钮即可直接生成调用接口所需的信息,点击绿色的 Send 按钮即可发送请求

                                                                            图 4

                                                                            # 下载文件

                                                                            点击蓝色图标 Send and Download

                                                                            图 5

                                                                            # 保存 API

                                                                            点击生成完参数,并进行适量修改后,可以对该 API 进行保存,方便后续再次调试的时候使用

                                                                            图 5

                                                                            # SearchEveryWhere 支持

                                                                            通过 SearchEveryWhere 可以快速搜索对应的 API,可以通过 url 关键字、请求方式 + url 关键字、方法描述来搜索 API

                                                                            图 6

                                                                            # 快速添加 Token 到 Header

                                                                            发送请求后可以通过 response 中的 Json 页签,选中字段,点击添加,将 token 快速添加到了项目级别的头参数中,极大地节省了手动复制操纵的行为。

                                                                            # API 导出到 Postman

                                                                            可以将已经保存的 API 导出到 postman, 非常方便

                                                                            # APIs 列表

                                                                            展示了保存的 API,同时也可以进行各种不同策略的搜索,点击右侧的定位图标可以快速定位到对应的代码,也可以直接点击发送按钮,对保存的 API 发起请求

                                                                            图 13

                                                                            # API 导入导出

                                                                            可以将保存的 API 导入及导出,跟不同的开发之间分享

                                                                            # Curl 拷贝

                                                                            点击小火箭生成完参数后,可以通过点击 curl 图标快速生成对应 api 的 crul

                                                                            图 7

                                                                            # Swagger 默认值解析支持

                                                                            支持 swagger2、swagger3 默认值解析

                                                                            支持的注解

                                                                            swagger2

                                                                            * @ApiParam
                                                                            
                                                                            @GetMapping(value="/test/{id}")
                                                                            public String test3(@ApiParam(name = "id",example="2") @PathVariable("id") Integer id) {
                                                                                return "";
                                                                            }
                                                                            
                                                                            @GetMapping(value="/test/{id}")
                                                                            public String test3(@ApiParam(name = "id",defaultValue="2") @PathVariable("id") Integer id) {
                                                                                return "";
                                                                            }
                                                                            
                                                                            
                                                                            * @ApiImplicitParam
                                                                            
                                                                            @ApiImplicitParams({
                                                                                @ApiImplicitParam(paramType="query",name="pageNo",dataType="String",required=true,value="pageNo",defaultValue="1"),
                                                                                @ApiImplicitParam(paramType="query",name="pageSize",dataType="String",required=true,value="pageSize",defaultValue="10")
                                                                            })
                                                                            @GetMapping(value="/testPage)
                                                                            public String testPage(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize) {
                                                                                return "";
                                                                            }
                                                                            
                                                                            
                                                                            * @ApiModelProperty
                                                                            @Data
                                                                            public class UserDto {
                                                                                @ApiModelProperty(example = "Bob")
                                                                                private String userName;
                                                                            }
                                                                            

                                                                            swagger3

                                                                            * @Parameter
                                                                            
                                                                            @GetMapping(value="/test/{id}")
                                                                            public String test3(@Parameter(name = "id",example="2") @PathVariable("id") Integer id) {
                                                                                return "";
                                                                            }
                                                                            
                                                                            * @Schema(swagger3)
                                                                            
                                                                            @Data
                                                                            public class UserDto {
                                                                                @Schema(example = "Bob")
                                                                                private String userName;
                                                                            }
                                                                            

                                                                            # API 自动生成注释

                                                                            字段注释需要符合标准注释规范,使用 /* 描述 /

                                                                            可以通过点击隐藏或显示 Description

                                                                            图 8

                                                                            # API 生成 Markdown 文档

                                                                            当我们在开发 API 的时候,例如在跟第三方对接接口的时候往往需要 API 文档,那么可以通过该功能快速导出 API 对应的文档

                                                                            # API 预览

                                                                            API 预览可以快速预览当前 Controller 下的 API,并且可以快速定位代码。聚焦窗口后输入关键字,根据 API 的路径关键字可以快速搜索

                                                                            # 项目全局参数

                                                                            可以进行配置,设置项目级别下的 Headers、Url Params、Url-Encoded Params、Cookie 等全局参数

                                                                            # 自动 Cookie 存储

                                                                            当一些需要 cookie 支持的项目,当发送完请求后,插件会自动地将 Cookie 放入项目级别参数 Cookie 中,后续需要 Cookie 的请求就可以使用该 Cookie 了

                                                                            图 10

                                                                            # 历史请求预览

                                                                            该功能可以让我们查阅历史请求的 API 以及对于的参数、url 等信息

                                                                            图 11

                                                                            # Html 预览

                                                                            可以对 html 形式的响应在 IDEA 内进行预览

                                                                            图 12

                                                                            # 总结

                                                                            Restful Fast Request 这个插件,体验确实不错。深入体验,确实能发现很多惊喜,并且提供了免费版和收费版,收费版中又做了很多细致化的功能,提升了很大的生产力,而且加入技术群直接打 6 折,确实值得入手一把

                                                                            上次编辑于: 2022/5/25 11:13:58
                                                                            贡献者: dd
                                                                            上一页
                                                                            代码缩略图:CodeGlance Pro
                                                                            下一页
                                                                            文件树增强:Show Comment
                                                                            © 2016 - 2022 didispace.com 版权所有
                                                                            沪ICP备14037150号-3
                                                                            Copyright © 2022 程序猿DD