做一个合格的开发,从玩转Apipost开始

x33g5p2x  于2022-05-06 转载在 其他  
字(3.8k)|赞(0)|评价(0)|浏览(482)

前言

也是有一段时间没更文了,最近忙于跟生活对线。

今天给大家带来的是一个宝贝, Apipost。

这东西做啥用?这东西做啥用?这东西做啥用?这东西做啥用?

在了解这个apipost的作用之前,先听我说,谢谢你因为有你,温暖了四季。

身为后端研发的我们, 是不是有以下这些感受?

麻烦点

①写完接口,得自测,写测试用例测完,跟前端联调,跑测试用例每次得重启代码一轮 ,麻烦。

②写完接口,得编写接口文档,纠结怎么去排版弄格式,麻烦。

③写完接口,写完文档,跟前端调试,跟测试对峙,出来混要讲证据,每次都是把接口调用没问题的截图发过去,麻烦。

④写完接口, 写完文档,其他人如果也参与了,还得发文档过去给他们,一起改来改去,麻烦。

都是因为写接口,所以解决方案就是 : 不写接口 ,就可以。

ps:说到接口自测, 忍不住吐槽,接口基本带token或者一些固定请求头,请求参数。烦! 每次调试接口,都得整一遍这些玩意,也是麻烦。

还有那个websocket的自测,简直了,得自己单独写个测试页面或者去找专门的测试网站…

那么,今天带来的Apipost,上边提到的麻烦点,它都能帮我们解决。

正文

开始玩一玩这个Apipost。

我们今天一块玩的东西 :

① 模拟HTTP请求(其实也就是接口调试)

② 接口公共参数、环境全局参数的使用

③ 一键快速生成文档 (白嫖文档)

④ 团队协作,多人在线一块玩

⑤接口的性能测试

⑥接口调用代码生成 (白嫖代码)

最好大家跟着我使用客户端一块操作一下,动手,动手,动手!!

客户端下载地址(本篇文章用的客户端):

https://www.apipost.cn/download.html?token=4d1f96403929460350281516e7637ee9

apipost 官网**:**

https://www.apipost.cn?token=4d1f96403929460350281516e7637ee9

Web版链接(不用下载):

https://console.apipost.cn/register?token=4d1f96403929460350281516e7637ee9

先贴一下日常工作的时候,我使用apipost的场景图:

① 模拟HTTP请求(其实也就是接口调试)

今天的砖依然烫手,忙活了一上午的陈师傅,复制粘贴出来了一个查询接口:

/**
 * @Author: JCccc
 * @Date: 2022-4-18 11:52
 * @Description:
 */

@RestController
public class UserController {

    @Autowired

    UserService userService;

    @GetMapping("/list")

    public Result<List<User>> list(UserQueryVO userQueryVO) {

        List<User> list = userService.list(userQueryVO);

        return new Result<>(200, "success", list);

    }

}

写完接口,打开apipost自测模拟一下接口调用:

ps:

提前预告,看到下面图的左边绿色(又绿了今天,加仓吗)框框里的目录没,录起来可以直接生成接口文档!后面会讲到,如果你急了,直接看后面第三点③.

可以看到,接口http请求模拟成功 (这返回数据界面清晰明了,还是因为我代码写得好啊):

当然,还可以模拟post、get、delete,还有patch、options、propfind、purge 请求等等,它会的太多了。

特意点一下post请求 ,咱们平时用的也是很多 :

② 接口公共参数、环境全局参数的使用

上面接口http请求模拟,其实很多很多软件都能实现。

但是,我们平时系统的接口经常都是涉及到token校验的,还有一些公共的必传参数,例如当前语言环境标识这种。

一次又一次地去给每个接口的 Header ,加上 token 这个key 吗?

一次又一次地给每个接口带上公共参数 语言环境标识 lang 这个key 吗 ?

我现在需要调试 100个接口 ,我要加100次吗? 人生有多少个100次?

Apipost****来了! 它带着 公共参数库 来了!

直接选中 我们Apipost的 左边 api目录,你想在什么层级目录下的接口享受到这个公共参数,那就选择哪一个目录 :

然后就是 可以去设置 公共的请求头参数 ,公共的Query参数,公共的Body参数 :

立刻实践验证一下(知识点,@RequestHeader 可以直接拿请求头参数):

@GetMapping("/list")
    public Result<List<User>> list(@RequestHeader("token")String token, UserQueryVO userQueryVO){

        System.out.println("token:"+token);

        List<User> list = userService.list(userQueryVO);

        return new Result<>(200,"success",list);

    }

可以看到,请求头里面的token ,香:

③ 一键快速生成文档 ,在线&导出(白嫖文档)

这是我最喜欢的一个功能点了。

想分享哪个目录下的接口,就点哪个,当然咱们也可以直接点击最外面的目录,也就是会生成整个项目的接口文档了;那又当然,我们如果想单独分享某个接口,也可以只点击某个接口做分享。

图示:

其实还有自由气息更高的,自定义分享:

自己看着想分享那些就勾选需要的目录就行,当然我们如果写的接口提前超过排期时间点了,那自然是需要适度分享的... 感觉我在教坏大家,这个自定义分享很贴心啊(嘿嘿)

分享的文章可以设置查看权限,支持 开放权限设置:

也支持密码权限设置:

分享出来的外网地址,直接访问,就可以看到在线文档:

每个目录的公共参数,一目了然:

生成的api接口排版简洁明了:


 


 

然后是细节了,平时我们找文档里面的接口,也是麻烦得很(Apipost的设计者显然也是开发仔,量身定做了搜索功能):

导出文档(支持各种格式,HTML、Word、MarkDown):

咱就是说,一键生成导出接口文档,然后任务排期是半天不过分吧,用好了软件,时间不就省下来了吗。

 ④ 团队协作,多人在线一块玩

也就是说我们这个是可以实时邀请其他人一块来玩的,也就是我一边调试,其他人也能一块一边调试。

ps:我们的Apipost是不需要登录也能使用的,但是如果需要协同工作,那自然就是需要登录了,因为有账号体系,可以方便追溯,方便管理。

界面右上角,点击邀请协作(想起之前用postman啊啊啊,都是导出,然后发给其他同事,他们自己导入再用。然后,我这边改了,又得导出,他们再导入。):

可以看到分了读写权限的概念,也就是说,这个很细节,假如你现在就是项目经理 (看客们,祝贺自己吧,看文章学着学着职级也升到经理了),哪些人可以看,哪些人能看能写,这个权限你可以把控。

⑤接口的性能测试

这个功能点也非常好,就是我们可以玩一些简单的性能压测,直接看实例:

我们反手录入一个接口:

然后对这个接口展开调用压测,看看稳不稳定:

当然还可以配合接口的mock一块用(这Apipost果真是为了协助考虑的,不仅仅对我们开发仔有考虑,还对我们的测试人员也是很贴心):

⑥接口调用代码生成 (白嫖代码)

这个功能我个人强推!

生成代码:

cURL方式的:

(意味着什么,那些本地有时候调试完,服务器上是不开放对外访问的,那么直接生成代码粘贴到服务器,一样可以调试...)

再看下我们选择java(java天下第一,不服评论区见) :

这个代码意味着什么?

如果说是我们调试第三方接口的时候,只要调通了,直接一键生成,然后复制粘贴到我们的项目里面(当作单测直接改都不用改),当作正式代码使用就稍微优化一下,这可是可视化编程啊啊啊啊!!!!

其他语言生成代码,不看! java就是世界上最好的语言。

ps :

补充一个纯吐槽的点

我是真的真的真的忍了postman一个点很久了,不知道大家有没有遇到过这个问题。

就是用postman,用着用着,某一天打开直接白屏了。 然后需要重新下载…

就光是这一点,如果你也被坑过,请你在评论区 立刻 !马上!跟我产生一波共鸣

最后,其实...官网里面的使用教程也很细,而且还有视频教程,非常暖心。

虽然我的教程是最好的教程。(不过还有蛮多很好玩的东西我没一一介绍,所以大家还是可以去官网看看的)。

Apipost官网里面不仅有教程,也有相关的问答社区、博客社区,也算是一个比较好的摸鱼区学习地方。

apipost 官网 :

https://www.apipost.cn?token=4d1f96403929460350281516e7637ee9

客户端下载地址 :

https://www.apipost.cn/download.html?token=4d1f96403929460350281516e7637ee9

Web版在线使用地址(不用下载):

https://console.apipost.cn/register?token=4d1f96403929460350281516e7637ee9

OK,该篇就到这里吧。

如果看官们有什么东西也想分享的,欢迎评论留言讨论 ,也可以直接联系我。

相关文章