引言
在现代 Web 开发中,前后端分离是常见的架构模式。然而,这种模式下也会遇到一些特定问题,比如跨域 Cookie 的设置和读取。本文将通过一个实际案例,探讨在使用 Render 和 Vercel 部署前后端项目时,如何解决 Cookie 不能正确传递的问题。
问题描述
最近我在一个项目中遇到了一项困扰:前端部署在 Vercel,后端部署在 Render,登录功能虽然在后端执行成功,但前端无法正确读取或设置 Cookie。这导致用户在成功登录后不能被重定向到主页。
问题分析
经过排查,问题主要出在以下几个方面:
- CORS 设置:虽然 CORS 配置允许跨域请求,但不一定包含 Cookie。
- Cookie 域名问题:Cookie 是由后端服务器设置的,默认情况下,浏览器只会在与请求的域名完全匹配的情况下发送 Cookie。
代码实例
以下是我的后端登录函数:
constLogin=asy