簡體   English   中英

當 nodejs 服務器不在本地主機上時,未設置 Cookies

[英]Cookies not set when nodejs server is not on localhost

我有一個 ReactJS 前端和一個 NodeJS 后端。 前端從 NodeJS 調用登錄 API 它返回一個帶有 JWT 令牌的 cookie,該令牌將用於其他調用。 我已經對其進行了測試,當前端和后端都在本地主機上運行時它可以工作。

我使用了 postman 並調用了相同的 API。 一個在 localhost 上運行,一個在 AWS EC2 上運行。 兩者都返回相同的響應,但是,在 EC2 上運行的響應沒有設置 cookie。 兩者都存在 set-cookie header。

我已經包含了 cors 配置。

var corsOptions = {
  origin: ['http://localhost:3001'],
  credentials: true
}
app.use(cors(corsOptions));

發現問題:

原來 safari 阻止了 cookies。 iOS 上的 Chrome 也受其影響。 關閉 safari 首選項上的“防止跨站點跟蹤”選項解決了該問題

嘗試使用完整鏈接向 API 發送請求

axios.post('https://mysite/api/v1/login', {email,password,...})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM