使用Postman工具軟體測試網站API(一)

超圖解物聯網IoT實作入門》書本3-41頁提到,可以在Chrome瀏覽器安裝Postman這個應用程式來傳送各種HTTP請求。Postman工具主要用於協助開發、測試REST API(參閱3-35頁),除了附屬於Chrome瀏覽器的版本,在Postman的官網也能下載「桌面版」原生應用程式(native app),此跨平台應用程式也是用JavaScipt, HTML和CSS等網頁技術,透過Electron製作而成。

開啟Postman,在它的URL位址欄位右邊的「方法(Method)」下拉式選單,可選擇GET, POST, PUT,… 等方法,HTTP 1.1規範的各種方法請參閱3-56頁的表3-1。底下是REST架構使用的幾個方法和用途:

  • GET:從伺服器讀取(read)資源
  • POST:建立(create)新的資源或者更新既有的資源
  • PUT:上傳新的資源來取代(replace)舊的
  • PATCH:更新(update)既有的資源
  • DELETE:刪除資源

至於LINK和UNLINK,這兩個方法還處於草案階段,能否成為正式規範甚至被廣泛使用仍在未定之天,請忽略它們。 底下將以OPTIONS和GET方法介紹Postman的操作方式。

使用OPTIONS方法取得網站支援的HTTP方法列表

OPTIONS方法用來向伺服器取得支援的HTTP方法列表,底下以eBay網站為例,輸入ebay.com網址之後,按下Send(傳送)

選擇OOPTIONS方法

如果連線沒問題,eBay伺服器將回應代表請求OK的狀態碼200

伺服器回應代表請求OK的狀態碼200

Cookie是從伺服器傳入,儲存在本機的資料;Headers是伺服器回應的檔頭訊息。點選Headers,從其中的allow(允許)欄位,使用逗號分隔列舉eBay伺服器支援的HTTP方法列表:

回應檔頭

每發送一次請求,請求的資源位址就會列舉在Postman視窗左邊的History(歷程)欄位。

History(歷程)欄位

許多網站伺服器都沒有開放OPTIONS方法,例如,嘗試向google.com發出OPTIONS請求,將會得到405 Method Not Allowed(方法不被允許)的錯誤狀態碼。

405 Method Not Allowed(方法不被允許)的錯誤狀態碼

透過GET方法與網站API取得天氣資料

本節將練習透過GET方法,從openweathermap.org網站獲取氣象資料。取用該網站的開放資料之前,必須先註冊(免費)帳號,取得一個API Key。

取得天氣資料的網址格式如下:

例如,取得台中地區的氣象:

世界各城市的名稱與天氣概況,可瀏覽該網站的世界天氣地圖(地圖可平移和縮放)。

請在Postman的URL欄位輸入上面的網址,方法選擇GET

選擇GET方法

若按下URL params(URL參數)鈕,可以看見附加在網址後面的查詢字串參數:

URL params(URL參數)畫面

按下Preview,可以預覽即將傳送給openweathermap.org網站的HTTP請求內容:

預覽畫面

按下Build,可回到前一個畫面;按下Send之後,伺服器將傳回JSON格式的天氣資料,Postman工具預設將以Pretty(易讀)格式,加上行號顯示傳回值:

伺服器傳回的JSON格式天氣資料

按下Raw(原始)鈕可顯示未編排的原始本體資料。

Raw(原始)資料畫面

透過Arduino讀取天氣資料的程式範例,請參閱這一則留言

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *