Postman - 授權



在 Postman 中,授權用於驗證使用者訪問伺服器資源的資格。一個專案中可能有多個 API,但它們的訪問許可權可以僅限於某些授權使用者。

授權流程應用於需要保護的 API。此授權用於身份識別和驗證使用者是否有權訪問伺服器資源。

這在 Postman 的授權選項卡中完成,如下所示:

Authorization tab

型別下拉選單中,有各種型別的授權選項,如下所示:

Authorization options

現在讓我們使用 GitHub 開發者提供的 API 建立一個 POST 請求,其端點為https://www.api.github.com/user/repos。在 Postman 中,單擊“正文”選項卡並選擇“原始”選項,然後選擇 JSON 格式。

新增以下請求正文:

{
	"name" : "Tutorialspoint"
}

然後,單擊傳送

Authorization options1

獲得的響應程式碼為401 未授權。這意味著我們需要傳遞授權才能使用此資源。要進行授權,請從授權選項卡中的“型別”下拉選單中選擇任何選項。

授權型別

讓我們討論一些重要的授權型別,即 Bearer 令牌和基本身份驗證。

Bearer 令牌

對於 Bearer 令牌授權,我們必須從“型別”下拉選單中選擇“Bearer 令牌”選項。之後,將顯示“令牌”欄位,需要提供該欄位才能完成授權。

步驟 1 - 要獲取 GitHub API 的令牌,首先登入 GitHub 帳戶,請單擊此處提供的連結:https://github.com/login

步驟 2 - 登入後,單擊螢幕右上角,然後選擇設定選項。

Settings

現在,選擇開發者設定選項。

Developer Settings

接下來,單擊個人訪問令牌

Access Tokens

現在,單擊生成新令牌按鈕。

New  Tokens

提供註釋並選擇 repo 選項。然後,單擊頁面底部的生成令牌

最後,將生成一個令牌。

Generate Token

複製令牌並將其貼上到 Postman 授權選項卡下的“令牌”欄位中。然後,單擊傳送

請注意 - 此處,令牌對於特定的 GitHub 帳戶是唯一的,不應共享。

回應

響應程式碼為201 已建立,這意味著請求已成功。

Code

基本身份驗證

對於基本身份驗證授權,我們必須從型別下拉選單中選擇基本身份驗證選項,以便顯示使用者名稱和密碼欄位。

首先,我們將向端點 (https://postman-echo.com/basic-auth) 傳送一個 GET 請求,並在“型別”下拉選單中選擇未選擇授權選項。

請注意 - 以上端點的使用者名稱為 postman,密碼為 password。

Authentication

獲得的響應程式碼為401 未授權。這意味著此 API 的授權未透過。

現在,讓我們選擇基本身份驗證作為授權型別,之後將顯示使用者名稱和密碼欄位。

在使用者名稱欄位中輸入 postman,在密碼欄位中輸入 password。然後,單擊傳送

Username and password

現在獲得的響應程式碼為 200 OK,這意味著我們的請求已成功傳送。

無授權

我們也可以使用請求頭執行基本身份驗證。首先,我們必須從授權選項卡中選擇無授權選項。然後在“標頭”選項卡中,我們必須新增一個鍵 - 值對。

我們將鍵設為 Authorization,值為使用者名稱的使用者名稱和密碼,格式為basic <編碼憑據>

我們在示例中使用的端點是:https://postman-echo.com/basic-auth。要對使用者名稱和密碼進行編碼,我們將藉助具有以下 URL 的第三方應用程式:https://www.base64encode.org

請注意 - 此處我們端點的使用者名稱為 postman,密碼為 password。在編輯框中輸入 postman-password 並單擊編碼。編碼後的值將在底部填充。

Encoded Value

我們將收到的編碼使用者名稱和密碼 cG9zdG1hbjpwYXNzd29yZA== 以格式basic cG9zdG1hbjpwYXNzd29yZA ==新增到標頭中。然後,單擊傳送

Authorization

從“型別”下拉選單中選擇無授權

Authorization1

獲得的響應程式碼為200 OK,這意味著我們的請求已成功傳送。

集合中的授權

要為集合新增授權,請按照以下步驟操作:

步驟 1 - 在 Postman 中單擊集合名稱旁邊的三個點,然後選擇編輯選項。

Collections

步驟 2 - 將出現“編輯集合”彈出視窗。轉到“授權”選項卡,然後從“型別”下拉選單中選擇任何選項。單擊更新

Collections1
廣告