利用 Postman Chrome app 和 Chrome 瀏覽器共享網站 cookie

背景

作爲一個Web工程師,最熟悉的日常工作莫過於後臺接口開發與聯調測試,而在接口測試上,大家最喜愛的工具清單裏,必然少不了 Postman 這一利器。然而,有時接口測試需要準備好登錄態,或者其他狀態數據,而這些數據往往就存在瀏覽器 Cookie 裏邊。結合本文介紹的工具,便可以無縫在 Postman Chrome app (爲什麼強調是 Postman Chrome app,文章末尾會說明)和 Chrome 瀏覽器之間共享 Cookie,而這個共享過程對用戶是透明的。

工具清單

以下工具請自行安裝,我只貼下官方的軟件界面截圖。

  1. Chrome 瀏覽器
  2. Postman Chrome app
    clipboard.png
  3. Postman Interceptor
    clipboard.png

使用步驟

以下我們以 Github 網站爲例,演示下如何實現 Cookie 共享。

一、確認 Postman Interceptor 插件安裝成功(如圖所示)

clipboard.png

二、啓動 Postman,在右上角的衛星小圖標那裏開啓 Chrome Interceptor

clipboard.png

三、在 Chrome 瀏覽器里正常登陸 GitHub 網站(此步驟沒什麼好演示的 ╭(╯^╰)╮)

四、在 Postman Chrome app 中直接模擬請求通知接口

接口路徑:https://github.com/notificati...
clipboard.png
也就是說,這個時候,我們雖然沒有對 Postman 做特殊的 Cookie 設置,但是它的請求的登錄態都被服務器驗證通過了,cookie 共享成功!

假如這個時候退出瀏覽器的登錄態呢?

我們先從 GitHub 退出登錄,還是剛纔的請求,這個時候的響應是:
clipboard.png
是的,因爲 Chrome 裏已經退出登錄,所以 Postman 這邊也自然失去登錄態了,說明兩邊 Cookie 是同步的。

Postman Interceptor 的 Bonus

clipboard.png
Postman Interceptor 還有一點比較爽的是,它的 Request Capture 支持捕捉 Chrome 瀏覽器裏的請求記錄,並且自動同步到 Postman Chrome app 裏邊,這樣的話,我們就可以方便直接在 Postman 裏獲取到我們需要測試的網絡請求,而不是一個一個自己填寫參數之類的了。
clipboard.png

缺陷

遺憾的是,按照官方說明,現在 Postman Interceptor 的這個Cookie 共享還不能支持獨立安裝的桌面版(從官方下載而不是從 Chrome 應用市場下載)的 Postman Desktop,所以,如果你希望使用上述功能,你只能安裝回 Postman Chrome app,而這個版本相對桌面版,功能自然也會少。

另一方面,考慮到 Chrome 瀏覽器將會在不久的將來完全停掉 Chrome apps,可能這個方案也撐不了太長久。

如果你真心希望 Postman 將上述功能加到他們的桌面版裏,可以到他們的官方GitHub issues去請願,他們正在收集大家的意見。但是……這個請願帖已經兩年多了,而就在我表達請求之前的幾個小時到幾天之前,都有人陸續去請願,所以也不知道會不會真的如願了。

總結

對於確實需要獲取網站 cookie 才能完成接口測試的場景,上述方法有一定的便利性,也纔有必要使用我的方法,其他場景的接口測試,你們就無視我吧。

參考鏈接

  1. Postman: Using the Interceptor to read and write cookies
  2. Postman Help Center: How do I access Chrome's cookies in Postman's Chrome App?
  3. Postman Learning Center: Interceptor extension
  4. Google is phasing out Chrome apps for Mac and Windows
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章