postman-使用Postman的模拟服务来模拟(mock)后端数据,完成前端模拟API调用

postman-使用Postman的模拟服务来模拟(mock)后端数据,完成前端模拟API调用

Setting up mockservers-设置模拟服务器 :Postman开发了一种新的模拟服务,使团队能够模拟后端服务器。Postman使您能够创建模拟服务器来协助 API 开发和测试。模拟服务器通过接受请求并返回响应来模拟真实 API服务器的行为。通过将模拟服务器添加到您的集合并向您的请求添加示例,您可以模拟真实 API 的行为。

前端,后端和API团队现在可以并行工作,从而释放之前因这些依赖性而延迟的开发人员。现在,让我们看看Postman是如何模拟后端的。

使用postman mock数据

⚠️:以下截图展示功能模块可能会和你的有所出入,应该只是版本问题,找到对应功能操作即可

创建mock集合-Collection

找到Collection

点击 + 号创建

可以看到我创建的集合

创建request

如图,我创建了一个GET 接口

创建mock server

选择集合mock

依然是在我们创建的集合这里,看到三个空心点,点击后可以看到Mock collection,点击

配置mock

点击Mock collection后,出现以下界面,为我们的mock server起个名字

  • Environment :存储重用值的变量,比如你的url前缀统一为:https://127.0.0.1:8080/api, 就可以设置环境变量,只是简化操作,无实际影响,这个下面会讲到
  • Simulate a fixed network delay:网络延迟的选择,无特殊要求也不用管

得到mock server地址

点击creat mock server后,会看到如下页面,有一个mock server的地址,这个mock server是postman在自己的服务器上为我们创建的,无论我们是否打开postman,我们都可以直接用这个地址来访问mock的API。

这个地址也不会丢,如下图步骤可以看到创建的mock server:

创建mock response

现在我们有了request请求,有了mock 服务,还缺少response就大功告成。

这一步简单理解来说就是对于request请求,需要自己提供mock data。 在postman里面,这个概念叫做example,即每一个你需要访问的路径/接口/资源,都可以提供一个🌰,即便你连不上,你也可以通过例子知道该路径/接口/资源大概会返回什么样的response。这个example不单单是为了mock而做的,因为postman可以生成API文档,在生成文档的时候,这个例子也会直接放在文档里,方便查阅文档的人了解接口。

具体步骤:

1. 打开collection,选择request;

2. 为request创建一个example;

3. 保存example;

填写response数据

这里有几点需要注意:

  • 每个request都可以有多个example
  • 每个example创建之后都可以修改
  • Mock server只会采用最后创建的example
  • 注意status code的设置

使用mock server

现在我们有了request请求,有了mock 服务,response内容也有了。

vbscript 复制代码
这时,mock server就不再只是一个空壳了
它会为每一个创建了example的request提供mock服务,
mock的内容就是最后创建的example的内容。

我们可以直接在浏览器上验证:

验证方式:mock server地址+api

注意,如果是POST请求,大概率会失败,因为浏览器默认是用GET去访问的

Environment

前面说到Environment,这里做个简单讲解

主要是用于存储重用值的变量,比如你的url前缀统一为:https://127.0.0.1:8080/api,就可以设置环境变量,只是简化操作

例如我之前设置的

总结

mock server是挂载postman的服务器上,只要有网络,前端是可以在家办公,而不用受制于内网限制的,有了postman这个功能,前端团队和后端团队完全可以在约定了API接口之后,各自完成开发,而不需要收到对方进度的影响,但接口、数据格式的约定就变得尤为重要了!

相关推荐
熊猫钓鱼>_>6 小时前
动态网站发布部署核心问题详解
前端·nginx·容器化·网页开发·云服务器·静态部署
方也_arkling6 小时前
elementPlus按需导入配置
前端·javascript·vue.js
我的xiaodoujiao6 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 44--将自动化测试结果自动推送至钉钉工作群聊
前端·python·测试工具·ui·pytest
沛沛老爹6 小时前
Web开发者转型AI:多模态Agent视频分析技能开发实战
前端·人工智能·音视频
David凉宸6 小时前
vue2与vue3的差异在哪里?
前端·javascript·vue.js
笔画人生6 小时前
Cursor + 蓝耘API:用自然语言完成全栈项目开发
前端·后端
AC赳赳老秦6 小时前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
小宇的天下6 小时前
Calibre 3Dstack --每日一个命令day18【floating_trace】(3-18)
服务器·前端·数据库
毕设源码-钟学长6 小时前
【开题答辩全过程】以 基于web技术的酒店信息管理系统设计与实现-为例,包含答辩的问题和答案
前端
css趣多多7 小时前
this.$watch
前端·javascript·vue.js