中文版Postman測試需要登陸才能訪問的接口(基於Cookie)


ApiPost堪稱增強版的中文postman,是一個支持團隊協作,並可直接生成文檔的API調試、管理工具。它支持模擬POST、GET、PUT等常見請求,是后台接口開發者或前端、接口測試人員不可多得的工具 。

下載地址:https://www.apipost.cn/download.html

在后台在開發、調試接口時,常常會遇到需要登陸才能請求的接口。

比如:獲取登陸用戶的收藏列表,此時,我們就需要模擬登陸狀態進行接口調試了。如圖:

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

今天,我們講解利用ApiPost的環境變量,解決這種需要先登錄再請求的接口依賴情況。

 

ApiPost提供了2種方案:

方案I、開啟全局cookie

2.5.8版本以后,apipost提供了開啟全局cookie的功能。開啟路徑如下:

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

開啟后,我們請求登陸接口后,后續接口都會共享“已登陸”的狀態,即共享了登陸接口返回的cookie。

如下所示:

第一步:請求登陸接口

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

第二步:訪問其他接口,則都處於了登陸狀態

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

方案II、利用環境變量,先請求登陸接口,再請求后續接口

這種方案是針對2.5.8版本之前的版本,或者關閉了全局cookie功能的情況。

1、先請求登陸接口:

為了處於登陸態,需要先請求登陸接口,此舉目的是為了模擬用戶的登陸行為,獲取需要的登陸參數(這里是Cookie)。

 

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

 

將登陸接口返回的PHPSESSID(這個是SessionID,PHPSESSID是針對PHP作為后端接口的SessionID變量名,其他語言的變量名可能不同)設為環境變量。

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

2、接着返回收藏接口,點擊【發送】按鈕旁邊的三角,選擇【帶Cookie】,輸入 PHPSESSID={{login_var}}。

此舉是為了利用登陸接口返回的Cookie偽造請求的PHPSESSID。

如圖:

 

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

 

3、接下來send,就可以看到我的收藏列表了。

使用ApiPost測試接口時需要先登錄的接口怎么辦(基於Cookie)?

原理:

利用ApiPost發送Cookie,使服務器識別已登錄用戶的Cookie。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM