【规范】Apifox就应该这么玩

前言

缘由

好的工具就要配好的玩法

起因是最近在回顾项目时,看到了年事已高并且长时间不用的Postman,发现之前自己整理的接口文档十分混乱且没有规律。遂打开现在使用的Apifox,将本狗目前项目中使用Apifox的整理规范和使用方法分享给大家,希望能有些许帮助。


主要目标

实现3大重点

1. 如何在Apifox整理目录
2. 善于使用管理环境
3. 灵活使用前置/后置操作

正文

1.Apifox整理目录

整理前的Postman接口目录

整理后的Apifox接口目录

有的小伙伴可能觉得这整理前和整理后没啥区别,反正就是工具,怎么用怎么舒服。

此话对否?非常对!但只是出于短平快的开发周期来讲没有任何毛病。如果是一个长期迭代,而且流程计划很正规的产品来讲,就显得有些杂乱无章。

本狗就是一个鲜活的例子,总是觉得每次迭代规整接口费时费力,但是实际划分为每个迭代版本后如果某个版本接口有问题,翻一下接口文档即可轻松定位。不仅美观还很省时省力,自己写起来也舒心。

所以,本狗的整理目录策略按照项目大分类,然后根据不同迭代版本加入前缀,如v1.0.1-用户-登录,v1.0.1-用户-注册等


2.管理环境

项目中开发中,可能会涉及到多个环境,如开发,测试,生产环境等。这就导致接口前缀会有多个不同,所以环境变量的设置尤为重要,不仅可以简化接口地址,并且能够提高接口复用性,去除冗余配置。

举例:

用户登录接口:/user/login

需要组合正确的url,分别是:

采用环境变量 {{baseUrl}} 来代替访问接口前缀 :
{{baseUrl}}/user/login

如何在环境变量里设置?

  1. 点击右上角【管理环境变量】
  2. 设置服务名,并写入前置URL,并点击【保存】
  3. 重复上述1,2操作,将不同环境的前缀路径分别录入
  4. 在新建接口时,不用写入前缀URL,只需写目标路径即可

3.前置/后置操作

什么是前置/后置操作

前置操作后置操作都是 API 请求在发送和响应过程中执行的脚本,主要用于在发起 API 请求前和获得响应后完成验证或执行某些操作,目的是为了提高 API 调试和测试的效率,并确保接口的正确性

大白话就是:在你执行接口前做一些事,叫做前置操作;在你执行接口后做一些事,叫做后置操作

举例:Apifox调用开放接口,前置操作获取数据参数加上密钥生成MD5签名,并请求接口

1、前置操作

点击前置操作

// 获取参数
var body = pm.variables.replaceIn(pm.request.body.raw);
// 转成JSON对象
var jsonData = JSON.parse(body);
// 拼接密钥并取MD5
let sign = CryptoJS.MD5(body+'z61IdxQp9zsSGQ3').toString().toUpperCase();
// 将签名赋值环境变量(详见下方2设置环境变量)
pm.environment.set('weiceSign', sign);

2、设置环境变量
点击【管理环境变量】=》全局变量,设置全局变量weiceSign,对应的是上一步最后将签名赋值环境变量


3、测试

变更参数,发送请求,测试是否能够自动生成头部签名并验证通过


总结

不会用工具的程序员不是个好厨师

工欲善其事必先利其器,通过此篇文章,简单总结了一下本狗工作中工具的使用方式。从三个方面作为切入点,分别讲解了Apifox目录如何分层整理;管理环境的灵活使用;前置/后置操作的配合应用。希望可以通过此水文让更多博友更加熟悉运用手里中的"兵器,让其发挥更大的作用。


猜你想问

如何与狗哥联系进行探讨

关注公众号【JavaDog程序狗】

公众号回复【入群】或者【加入】,便可成为【程序员学习交流摸鱼群】的一员,问题随便问,牛逼随便吹。

此群优势:

  1. 技术交流随时沟通
  2. 任何私活资源免费分享
  3. 实时科技动态抢先知晓
  4. CSDN资源免费下载
  5. 本人一切源码均群内开源,可免费使用

    2.踩踩狗哥博客

    javadog.net

    大家可以在里面留言,随意发挥,有问必答


猜你喜欢

文章推荐

【项目实战】SpringBoot+uniapp+uview2打造H5+小程序+APP入门学习的聊天小项目

【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序

【模块分层】还不会SpringBoot项目模块分层?来这手把手教你!

【ChatGPT】手摸手,带你玩转ChatGPT

【ChatGPT】SpringBoot+uniapp+uview2对接OpenAI,带你开发玩转ChatGPT


你可能感兴趣的:(工具工具软件接口工具类java)