選單
GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
1 分鐘閱讀時間 (148 個字)

解決rest client登入cookie驗證失敗的方法

解決rest client登入cookie驗證失敗的方法

使用REST-Client一陣子之後,最近常常遇到打本地伺服器API會發生身分驗證失敗的情況,但是打遠端伺服器卻正常的情形。明明Cookie也換過了,但是本機上還是會打不過。

往往最後還是要打開Postman的窘境。還一度考慮是否要更換測試工具。但是REST-Client真是太好用了,是我開發API的過程中,就能幫我快速檢驗API是否正確的小工具。

我跟前輩一直想找出問題的原因,最近終於發現問題所在了。

使用REST-Client的產生cURL的功能看到的Cookie值,的確是使用我設定的Cookie。

但用後端程式的偵錯模式一看,收到的Cookie卻不是我在REST-Client設定的Cookeie。

我找跟Cookie有關的issue:New cookie is not set and provide ability to clear cookies #117才發現問題所在!!!

在測試API的過程中,後端可能會回傳Set-Cookie回來,REST-Client會自動儲存起來,並在下次打API的時候使用這把新Cookie。

所以在測API的時候明明有設定的Cookie A,但在後端收到的卻是Cooke B,因為REST-Client實際傳送的是Set-Cookie的Cookie B。

所以要解決這個問題就非常簡單了!

首先去VS Code的設定中,搜尋Cookie相關的功能,找到Remember Cookies For Subsequent Requests選項,並取消勾選

VScodeSETTing2

第二步驟是前往電腦的家目錄尋找把~/.rest-client/cookie.json儲存Cookie的檔案刪掉,就大功告成了。

(在我的Windows上檔案路徑會是C:\Users\長庚\.rest-client\cookie.json)

有自動儲存的Cookie都是放在cookie.json裡,內容格式如下

{
    "www.mywebsite.com": {
        "/": {
            ".AspNet.Cookies": {
                "key": ".AspNet.Cookies",
                "value": "qfewghy5krtegrsdnmgj;7p9o86i7rj34hjyrkuil6treu5ywaegdfbgnfhmuttytsrgfagsfwrsghsj3111",
                "domain": "www.mywebsite.com",
                "path": "/",
                "secure": true,
                "httpOnly": true,
                "hostOnly": true,
                "creation": "2021-05-29T17:28:38.405Z",
                "lastAccessed": "2021-05-29T17:28:38.405Z"
            }
        }
    }
}
心靈成長-"思考的框架"摘要分享 #下篇
心靈成長-"思考的框架"摘要分享 #中篇

相關文章

 

評論

尚無評論
已經注冊了? 這裡登入
Guest
2024/04/26, 週五

Captcha 圖像