Postman详解

Posted yitao326

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Postman详解相关的知识,希望对你有一定的参考价值。

官网地址:https://www.getpostman.com

Postman 的优点:

  • 支持各种的请求类型: get、post、put、patch、delete 等
  • 支持在线存储数据,通过账号就可以进行迁移数据
  • 很方便的支持请求 header 和请求参数的设置
  • 支持不同的认证机制,包括 Basic Auth,Digest Auth,OAuth 1.0,OAuth 2.0 等
  • 响应数据是自动按照语法格式高亮的,包括 html,JSON 和 XML

下载安装

Postman 有 windows、Mac、Liunx 以及 Chrome 插件版本。这里主要介绍 Win 平台版本的使用。 

下载地址:https://www.getpostman.com/apps

官方文档:https://www.getpostman.com/docs/v6/

Postman Api 文档:https://docs.postman-echo.com

发送不同类型 HTTP 请求 

GET:HTTP GET请求方法用于从服务器检索数据。 数据由唯一的URI(统一资源标识符)标识。

 

GET请求可以使用“Query String Parameters”将参数传递给服务器。 例如: https://postman-echo.com/get?param1=51zxw&param2=66666

 

POST:HTTP POST请求方法旨在将数据传输到服务器,返回的数据取决于服务器的实现。 POST请求可以使用Query String Parameters以及body将参数传递给服务器。

 

Postman Body 数据类型说明: 

  • form-data multipart/form-data是Web表单用于传输数据的默认编码。这模拟了在网站上填写表单并提交它。表单数据编辑器允许我们为数据设置键-值对。我们也可以为文件设置一个键,文件本身作为值进行设置。
  • x-www-form-urlencoded 该编码与URL参数中使用的编码相同。我们只需输入键-值对,Postman会正确编码键和值。请注意,我们无法通过此编码模式上传文件。表单数据和urlencoded之间可能存在一些差异,因此请务必首先检查API的编码实现,确定是否可以使用这种方式发送请求。
  • raw 请求可以包含任何内容。除了替换环境变量之外,Postman不触碰在编辑器中输入的字符串。无论你在编辑区输入什么内容,都会随请求一起发送到服务器。编辑器允许我们设置格式类型以及使用原始主体发送的正确请求头。我们也可以手动设置Content-Type标题,这将覆盖Postman定义的设置。
  • binary 二进制数据可让我们发送Postman中无法输入的内容,例如图像,音频或视频文件。

PUT:HTTP PUT请求主要是从客户端向服务器传送的数据取代指定的文档的内容。

PUT请求可以使用Query String Parameters以及body请求体将参数传递给服务器。

DELETE:HTTP DELETE方法用于删除服务器上的资源

DELETE请求可以使用Query String Parameters以及body请求体将参数传递给服务器。

Request Header

Request Header(请求头)用来说明服务器要使用的附加信息,比较重要的信息有 Cookie、Referer、User-Agent 等。

Response Header

Response Header(响应头)其中包含了服务器对请求的应答信息,如 Content-Type、Server、Set-Cookie 等。

授权设置

很多时候,出于安全考虑我们的接口并不希望对外公开。这个时候就需要使用授权(Authorization)机制 授权过程验证您是否具有访问服务器所需数据的权限。 当您发送请求时,您通常必须包含参数,以确保请求具有访问和返回所需数据的权限。

Basic auth

基本身份验证是一种比较简单的授权类型,需要经过验证的用户名和密码才能访问数据资源。这就需要我们输入用户名和对应的密码。

Digest auth

Digest auth 是一个简单的认证机制,最初是为HTTP协议开发的,因此也常叫做HTTP摘要。其身份验证机制非常简单,它采用哈希加密方法,以避免用明文传输用户的口令。摘要认证就是要核实參与通信的两方都知道双方共享的一个口令。

当server想要查证用户的身份,它产生一个摘要盘问(digest challenge),并发送给用户。

典型的摘要盘问例如以下: 

Digest realm="iptel.org", qop="auth,auth-int", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", opaque="", algorithm=MD5

 


这里包含了一组参数,也要发送给用户。用户使用这些參数,来产生正确的摘要回答,并发送给server。摘要盘问中的各个參数,其意义例如以下:

realm(领域):领域參数是强制的,在全部的盘问中都必须有。它是目的是鉴别SIP消息中的机密。在SIP实际应用中,它通常设置为SIP代理server所负责的域名。

nonce(现时):这是由server规定的数据字符串,在server每次产生一个摘要盘问时,这个參数都是不一样的(与前面所产生的不会雷同)。“现时”一般是由一些数据通过md5杂凑运算构造的。 这种数据通常包含时间标识和server的机密短语。这确保每一个“现时”都有一个有限的生命期(也就是过了一些时间后会失效,并且以后再也不会使用),并且是独一无二的 (即不论什么其他的server都不能产生一个同样的“现时”。

algorithm(算法):这是用来计算的算法。当前仅仅支持MD5算法。

qop(保护的质量)。这个參数规定server支持哪种保护方案。client能够从列表中选择一个。值 auth表示仅仅进行身份查验, auth-int表示进行查验外,另一些完整性保护。

技术分享图片

Hawk Auth

Hawk Auth是一个HTTP认证方案,使用MAC(Message Authentication Code,消息认证码算法)算法,它提供了对请求进行部分加密验证的认证HTTP请求的方法。hawk方案要求提供一个共享对称密匙在服务器与客户端之间,通常这个共享的凭证在初始TLS(安全传输层协议)保护阶段建立的,或者是从客户端和服务器都可用的其他一些共享机密信息中获得的。

 


以上是关于Postman详解的主要内容,如果未能解决你的问题,请参考以下文章

postman 自动生成 curl 代码片段

postman添加断言

PostMan——安装使用教程(图文详解)

详解--Postman基本使用方法+接口关联+[Python+requests]代码接口关联,值得你收藏

postman断言内容详解

postman:详解在postman中使用环境变量