首页  >  文章  >  web前端  >  尽管将 https://example.com 添加到我的允许列表中,为什么我仍会收到 CORS 错误?

尽管将 https://example.com 添加到我的允许列表中,为什么我仍会收到 CORS 错误?

Barbara Streisand
Barbara Streisand原创
2024-11-01 21:15:02476浏览

Why Am I Getting a CORS Error Despite Adding https://example.com to My Allowlist?

CORS 错误:尽管有显式白名单,访问仍被拒绝

尝试在 React、Node.js 和 Socket.IO 之间启用跨域请求时,出现错误“Access from尽管我允许 https://example.com/ 出现,但来源“https://example.com”已被阻止。尽管添加了必要的权限,错误仍然存​​在。

原因和解释

问题源于对 CORS 配置中的源头和接受的源的误解。

Origin 头尾随斜杠

Web 原始标头包含尾部斜杠。例如,“https://googledocs-clone-sbayrak.netlify.app/”的来源是“https://googledocs-clone-sbayrak.netlify.app”。在源中添加尾部斜杠(例如“https://googledocs-clone-sbayrak.netlify.app/”)是无效的。

逐字节比较

CORS 配置使用逐字节比较来确定请求的来源是否与允许的来源匹配。在这种情况下,允许的来源是“https://googledocs-clone-sbayrak.netlify.app”,而请求的来源是“https://googledocs-clone-sbayrak.netlify.app/”,这是不匹配的.

正确设置允许的来源

要解决此问题,请调整 CORS 配置中允许的来源以匹配不带尾部斜杠的确切来源:

cors: {
    origin: 'https://googledocs-clone-sbayrak.netlify.app'
}

以上是尽管将 https://example.com 添加到我的允许列表中,为什么我仍会收到 CORS 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn