为什么接口调试需要专门工具
浏览器地址栏只能发 GET 请求,而真实接口有 POST、有请求头、有 JSON 请求体、有鉴权 token。Postman 这类工具把这些能力集中起来,还能保存历史、分组管理、写自动化断言,是前后端联调和测试的标配。
本教程用一个人人熟悉的场景:登录接口。跟着走一遍,你就掌握了整套工作流。
第一步:构造第一个请求
新建请求,选择 POST,URL 填 http://localhost:8080/api/login。点击 Body 选项卡,选择 raw 和 JSON 格式,填入请求体:{“username”:”admin”,”password”:”123456″}。点击 Send,右侧返回响应,包括状态码、响应头和响应体。
三个小技巧:第一,请求头里通常要加 Content-Type: application/json,Postman 在选 JSON 格式时会自动加;第二,接口报 400 时先检查请求体格式是否正确;第三,把常用请求保存到集合(Collection)里,下次直接点,不用重敲。
第二步:用环境变量管理不同环境
开发、测试、生产三个环境的地址不同,总不能每次手动改 URL。点击右上角环境管理,新建一个开发环境,添加变量 base_url 值为 http://localhost:8080。URL 写成 {{base_url}}/api/login,切换环境时所有请求自动换地址。
更进一步:登录接口返回的 token 存进变量,后续需要鉴权的接口自动带上。在 Tests 里写一行脚本:var json = pm.response.json(); pm.environment.set(token, json.data.token)。然后其他请求的 Header 里写 Authorization: Bearer {{token}},自动完成鉴权,省去手动复制粘贴。
第三步:断言让测试自动化
光看响应不够,要让工具自动判断结果对不对。Postman 的 Tests 选项卡支持写断言脚本,常用三条:断言状态码 pm.response.to.have.status(200)、断言返回字段 pm.expect(json.data.token).to.exist、断言业务码 pm.expect(json.code).to.eql(0)。
写好后点击 Runner(集合运行器),勾选整个集合,一键跑完所有接口,每个接口通过还是失败一目了然。回归测试从两小时变成两分钟。
第四步:Apifox的接口管理优势
Apifox 可以看作 Postman 加 Swagger 加 Mock 的合体:接口文档、调试、Mock、自动化测试都在一个工具里。团队后端写好接口定义,前端立刻用 Mock 数据开发,不用等后端写完。
核心流程:后端在 Apifox 里维护接口文档,每个接口能一键生成 Mock 地址;前端调 Mock 地址开发页面;后端就绪后把环境切换成真实地址,前后端无缝衔接。对团队协作,Apifox 比 Postman 少了文档维护这一层成本。
第五步:排错心法
接口报错先看三样:状态码(4开头是客户端问题,5开头是服务端问题)、响应体里的错误信息、请求头是否正确。前端报错先看 Network 面板里请求到底发出去没有;后端报错先看日志里有没有接收到请求。大多数联调问题都出在参数名不一致、编码问题、鉴权缺失这三类,按顺序排查基本都能定位。