如何強制在每個 Axios 請求中使用憑據
我使用 Axios 與一個設定了 JWT 權杖的 API 進行交互。
該 API 在 cookie 中返回該令牌,我很快發現我需要在 Axios 選項中設置 withCredentials: true
:
1 | import axios from 'axios' |
否則,cookie 將不會被保存。
我還需要在我發出的每個其他請求中設置它,以將 JWT 權杖發送到服務器:
1 | axios.get(API\_SERVER + '/todos', { withCredentials: true }) |
現在,對於少量請求,這是可行的,但對於許多請求,您可能希望使用一個通用的配置。
您可以使用 create()
方法來創建一個新的 Axios 實例,然後在您的請求中使用它:
1 | import axios from 'axios' |
通常還會添加一個 baseURL
屬性:
1 | import axios from 'axios' |
在 React 中,我使用了 axios-hooks
,若要設定 withCredentials
,我使用了以下代碼:
1 | import axios from 'axios' |
tags: [“Axios”, “JWT”, “Axios-hooks”, “React”, “強制憑據”, “配置”]