使用 Postman 发送请求
1. 前言
你可以通过 Postman 发起 API 请求。一个 API 请求允许你从数据源请求数据或者添加数据。 API 运行在 Web 服务器上,并把端口暴露出来供客户调用。
利用 Postman, 不需要使用终端也不需要写代码,你就可以发起 API 请求并且检查请求的响应。当你创建完 API 请求并发送之后, API 响应就会显示在 Postman 用户界面中。
下图是 Postman 进行 API 请求的简单示例:
2. 创建新的请求
在 Postman 发送请求要填写一些信息,有些信息是必填的包括请求 URL,请求方法(比如: POST / GET / PATCH / DELETE),有些信息是选填的,比如携带的参数、认证信息和主体信息。
在 Postman 首页中点击 New -> Request (新建 -> 请求),也可以通过点击首页上的“+”添加一个新的 tab,来创建请求。
点完之后,会弹出如下弹窗,需要输入请求名和描述,以及选择这个请求要保存在哪个集合里(如果还没有集合,可以在弹窗中创建):
3. 输入请求的URL
如下图所示,在输入框中输入 URL。
-
如果你正在创建一个 API, URL 通常是由基础路由加端点路径构成的;例如:在请求“postman-echo.com/get”中,“postman-echo.com”是基础路由,“/get”是端点路径。
-
如果你使用的是第三方 API,那第三方会提供给你相应的 URL。
4. 选择请求方法
默认情况下,Postman 会为新请求选择 GET 方法。API 请求用的都是 HTTP 方法。 最常见的方法包括 GET、POST、PATCH、PUT和 DELETE。
-
GET 方法从 API 获取数据;
-
POST 方法向 API 发送添加新数据;
-
PATCH 和 PUT 方法用来更新数据;
-
DELETE 方法用来删除已存在的数据;
除了这些 Postman 默认支持的请求方法,你还可以自定义请求方法。单击方法下拉列表 -> 编辑方法名称 -> 保存新方法。要删除一个方法,请将鼠标悬停在列表中的方法上,然后选择“垃圾桶”图标。
- 如果请求不需要参数或身份验证,可以继续单击“发送”请求以获取响应;
- 否则,指定 API 的参数和主体数据;
- 如果需要,设置所需的身份验证和请求头。
5. 设置请求参数
在发送请求的时候,还可以携带参数。
- 查询参数会被加到 URL 的末尾, 跟在 ? 后面并以键值对的形式列出, 以 & 分割,类似以下语法:
?id=1&type=new
- 路径参数组成请求 URL 的一部分,会用占位符加参数的形式来引用,如下例所示: /customer/:id
要发送查询参数,请直接将其添加到 URL 或打开 Params 并输入名称和值。
参数不会自动变成URL编码,需要手动操作,右键点击被选中的需要被编码的文字,选择 **EncodeURIComponent ** 手动编码。
要发送路径参数,请在 URL 字段中输入参数名称,在冒号之后,例如 :id。当你输入一个路径参数,Postman 将填充它在 Params 页。
还可以给参数添加描述,当把请求分享给其他人时,他们也可以看到请求的描述帮助理解。
如果请求不需要输入主体数据、身份验证或者请求头,这时就可以点击“Send”来发送请求。
Tips:如果你不想用键值对编辑页面,你可以切换到“Bulk Edit”,就是纯文本编辑。
6. 设置主体数据:
当想要添加或者更新结构化数据的时候,请求就要携带主体数据。一般 PUT, POST, PATCH 这几类请求是需要携带主体数据的。
可以在 Postman 中的 Body 选项卡里输入主体数据。
如果你要发送主体数据,一定要选择正确的请求头,以确保API可以正确处理发送的这些数据:
- 对于表单数据和 urlencoded 内容,Postman 会自动附加正确的 Content-Type 头;
- 如果你的主体数据使用的是原始模式,Postman 会根据你选择的类型设置请求头(e.g. text, json);
- Postman 不会为二进制主体数据设置请求头。
7. 配置身份验证信息
有一些 API 出于安全考虑,不会开放给任何人,所以需要身份验证信息以授权该用户可以访问 API。
Postman 会自动把认证信息放到请求的相关部分,比如放到请求头。
8. 配置请求头
有一些API要求你在发送请求的时候设置请求头来提供需要的元数据。可以在 Headers 选项卡里进行设置,输入需要的键值对。
最后,这些配置完成后,点击发送,会在下面窗口中看到来自服务器的 JSON 数据响应:
9. 小结
本章向大家讲了如何在 Postman 中发送一个请求并介绍了请求方法,请求参数,主体数据,验证信息以及请求头的设置方法。
- 还没有人评论,欢迎说说您的想法!