Postman – 授权
在Postman中,授权用于验证用户是否有资格访问服务器上的资源。一个项目中可能有多个API,但是只有授权用户才能访问它们。
授权过程适用于需要保护的API。授权用于标识和验证用户是否有权访问服务器资源。
在Postman的授权选项卡中,可以执行此操作,如下图所示 –
在类型下拉菜单中,有多种授权选项,如下所示 –
现在让我们创建一个带有GitHub Developer的API的POST请求,其中包含端点 https://www.api.github.com/user/repos。在Postman中,单击Body选项卡,并选择原始选项,然后选择JSON格式。
添加以下请求正文 −
{
"name" : "Tutorialspoint"
}
然后,单击 发送 。
获得的响应代码是 401 未授权 。这意味着我们需要授权才能使用此资源。要授权,请在授权选项卡中从类型下拉菜单中选择任何选项。
授权类型
让我们讨论一些重要的授权类型,例如Bearer Token和Basic Authentication。
Bearer Token
对于Bearer Token授权,我们必须从类型下拉菜单中选择Bearer Token选项。此后,Token字段将被显示,需要提供此字段以完成授权。
步骤1 – 为了获得GitHub API的Token,首先通过单击以下链接登录GitHub帐户 – https://github.com/login 。
步骤2 – 登录后,单击屏幕右上角,选择设置选项。
现在,选择开发人员设置选项。
接下来,单击个人访问令牌。
现在,单击生成新令牌按钮。
提供一个注释,并选择repo选项。然后,单击页面底部的生成令牌。
最后,生成一个Token。
复制Token并将其粘贴在Postman中授权选项卡下的Token字段中。然后,单击发送。
请注意 – 此处的令牌唯一适用于特定的GitHub帐户,不应共享。
响应
响应代码为201 已创建,这意味着请求成功。
基本身份验证
对于基本身份验证授权,我们必须从类型下拉菜单中选择基本身份验证选项,这样用户名和密码字段就会显示。
首先,我们将发送一个GET请求到一个端点( https://postman-echo.com/basic-auth ),并从类型下拉菜单中选择无授权选项。
请注意 − 以上端点的用户名为“postman”,密码为“password”。
获得的响应代码是401 未授权。这意味着此API的授权未通过。
现在,让我们将基本身份验证选项作为授权类型选择,之后会显示用户名和密码字段。
在用户名字段中输入postman,在密码字段中输入密码。然后,单击发送。
现在获得的响应代码是200 OK,这意味着我们的请求已成功发送。
无授权
我们还可以使用请求标头进行基本身份验证。首先,我们必须从授权选项卡中选择无授权选项。然后,在标头选项卡中,我们必须添加一个键值对。
将键设置为Authorization,将值设置为用户的用户名和密码,格式为basic < encoded credential >。
我们示例中使用的端点是 https://postman-echo.com/basic-auth 。为了对用户名和密码进行编码,我们将使用具有以下URL的第三方应用程序 – https://www.base64encode.org
请注意 – 此处的用户名为postman,密码为password。在编辑框中输入postman-password,然后单击Encode。编码值将填充到底部。
我们将接收的编码用户名和密码添加到Header中,格式为-basic cG9zdG1hbjpwYXNzd29yZA==。然后,单击发送。
从类型下拉菜单中选择无授权。
获得的响应代码是200 OK,这意味着我们的请求已成功发送。
集合中的授权
要为集合添加授权,请按照以下步骤进行操作 –
步骤1 – 在Postman中,单击Collection名称旁边的三个点,然后选择编辑选项。
步骤2 – 会出现编辑集合的弹出窗口。转到授权选项卡,然后从类型下拉菜单中选择任何选项。然后,单击更新。