从 CORS 报错看浏览器预检请求的完整链路与 Node.js 调试实践
跨域请求被浏览器拦截是前后端联调时最常撞上的问题之一。控制台里那句 Access to fetch at 'http://localhost:3000/api' from origin 'http://localhost:5173' has been blocked by CORS policy 背后,浏览器其实做了不少工作:它可能先发了一个 OPTIONS 请求去询问服务器是否允许这次跨域,这个请求叫预检请求。很多开发者遇到报错时习惯直接往响应头里塞一个 Access-Control-Allow-Origin: *,结果发现带了 Cookie 的请求依然失败,或者 PUT、DELETE 方法...