iT邦幫忙

2022 iThome 鐵人賽

DAY 23
1
Software Development

ASP.NET Core 30 天旅程系列 第 23

[Day23]- API系列之 Postman

  • 分享至 

  • xImage
  •  

Postman是一個可以測試 API 的工具,可以發送 Request,包括 GETPOSTPUTDELETE,對於開發人員真的是一個非常方便的工具。

安裝

以下範例會利用 JSONPlaceholder 這個網站的 API 作範例。

GET

GET 比較簡單,只要輸入 URL。
https://ithelp.ithome.com.tw/upload/images/20221008/20152200VqGrU2cRYr.png

POST

POST 發送資料有以下幾個常見的資料格式

  • application/x-www-form-urlencoded
  • multipart/form-data
  • application/json

application/x-www-form-urlencoded

https://ithelp.ithome.com.tw/upload/images/20221008/20152200blJOJaakoO.png

multipart/form-data

*上傳檔案、圖片、影片
https://ithelp.ithome.com.tw/upload/images/20221008/20152200XN5odySFEQ.png

application/json

https://ithelp.ithome.com.tw/upload/images/20221008/20152200mDGIFFcRPV.png

Authorization

在 Postman裡可以選擇以下幾種授權方式,發送請求時回在Header裡一起發出給 API Server驗證。
https://ithelp.ithome.com.tw/upload/images/20221008/201522000Jp7glyJSI.png

Bearer 的驗證方式通常搭配在上一篇的 JWT Token ,在 Postman設定如下
https://ithelp.ithome.com.tw/upload/images/20221008/20152200lhjieJ9RtX.png
設定後切到Header Tab 會看到
https://ithelp.ithome.com.tw/upload/images/20221008/20152200PlCcGbwItr.png

以上功能都算 Postman 基礎的使用,強大的 Postman還可以模擬 SSL/TLS

禁用 SSL/TLS

有時候兩邊的 TLS 不一致會導致無法成功地接收或傳送,這時候可以利用這個功能做模擬測試
https://ithelp.ithome.com.tw/upload/images/20221008/20152200LhTaEI1r9d.png

Evironments

Postman可以設定環境變數,像是有時候開發人員自己的 local、測試機、正式機都會是不同的 IP ,這時候就可以利用這個功能
https://ithelp.ithome.com.tw/upload/images/20221008/20152200Uu10nNlagT.png
這邊我分三個變數 Dev(開發)、Test(測試)、Prod(正式)
*以上 IP 都是亂打的 XDD
https://ithelp.ithome.com.tw/upload/images/20221008/20152200mXo1EtmStm.png

接者在測試時就可以選擇要用哪個環境變數

測試開發環境
https://ithelp.ithome.com.tw/upload/images/20221008/20152200qobyntWN9M.png
如果想看 URL 游標可以直接滑到{{Dev}}
https://ithelp.ithome.com.tw/upload/images/20221008/20152200xxG2bI0Gr9.png

若想改成測試環境可以直接改成{{Test}}
https://ithelp.ithome.com.tw/upload/images/20221008/20152200dSXv0LNx4w.png

是不是超方便!!!!當很多支API的時候就不用每支都改來來去 IP 了


上一篇
[Day22]- API 系列之 JWT
下一篇
[Day24]- API 系列之 JWT 實作篇
系列文
ASP.NET Core 30 天旅程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言