• 赚钱入口【需求资源】限时招募流量主、渠道主,站长合作;【合作模式】CPS长期分成,一次推广永久有收益。主动打款,不扣量;

Vue 3看不到收到的Cookie

Vue cps12345 1年前 (2020-07-28) 235次浏览 0个评论

我已经与Postman核对了对后端的请求,然后看到了“ set-cookie”和来自后端的数据。

前端:

  • Vue 3
  • Axios 0.18.1
  • 网址:127.0.0.1:8080

后端:

  • FastAPI
  • 葡萄胎
  • 网址:127.0.0.1:8000

在前端,Axios的发布消息如下:

axios
    .post(process.env.VUE_APP_API_URL + '/login', this.auth, {withCredentials: true})
    .then(res => {
      console.log(res.data);
    })
    .catch(e => {
      console.log(e);
    });

在后端,我配置显式起源:

    origins = [
    "http://localhost",
    "http://localhost:8080",
    "http://127.0.0.1",
    "http://127.0.0.1:8080",
]
app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)

当我将响应返回到前端时:

    response.set_cookie(
        key="Authorization",
        value=f"Bearer {token}",
        domain="127.0.0.1",
        path="/login",
        httponly=True,
        secure=False,
        max_age=1800,
        expires=1800,
    )

解决方法

前端:

.env.development文件:

NODE_ENV=development
VUE_APP_API_URL=http://localtest.me:8000

后端:

origins = [
"http://localhost",
"http://localhost:8080",
"http://localtest.me",
"http://localtest.me:8080"

]

response.set_cookie(
        key="Authorization",
        value=f"Bearer {token}",
        domain="localtest.me",
        path="/",
        httponly=True,
        secure=False,
        max_age=1800,
        expires=1800,
    )
喜欢 (1)

您必须 登录 才能发表评论!