Access-Control-Allow-Origin為*的時候,前端設置withCredentials:true,將不能發送cookie到服務端。
此外,前端要發送cookie到服務端,還要 XMLHttpRequest 的 withCredentials 標志設置為 true,且
服務器端的響應中未攜帶 Access-Control-Allow-Credentials: true。
XMLHttpRequest 的 withCredentials 標志設置為 true,是為了客戶端向服務端發送cookie,
響應中Access-Control-Allow-Credentials: true,是為了客戶端能夠接收cookie,無此標記,瀏覽器將不會把響應內容返回給請求的發送者。
因此,前端要攜帶cookie到服務端,需要三個條件:
1. Access-Control-Allow-Origin不能為*,應為具體域名
2. 服務端Access-Control-Allow-Credentials應為true
3. 客戶端XMLHttpRequest 的 withCredentials=true
詳情可參考:MDN