清除X-CSRF token,供访问者修复XMLHTTPREQUEST被CORS策略阻止



我刚刚从一个主机切换到另一个主机,由于某种原因,我们在尝试访问第三方API时会遇到以下错误>

Access to XMLHttpRequest at 'https://externalwebsite.com/api/' from origin 'https://www.mainwebsite.com.au' has been blocked by CORS policy: Request header field x-xsrf-token is not allowed by Access-Control-Allow-Headers in preflight response.

.htaccess文件具有允许这些连接的CORS策略:

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>

我可以看到旧主机设置了以下cookie,当我在系统上删除它们时,它允许网站正常工作:

XSRF-TOKEN 1551054855|ZxDIR_16hNnw .www.mainwebsite.com

hs 1333923782 .www.mainwebsite.com

svSession 253f275579e7747b6495ca6ff45ba024da3bd3b36906f5ac14b709de48792403faf1d3bbff2205d92d2e9a8de90d4b101e60994d53964e647acf411e4f798bcd4c6094311de4bdfbf81f1c6cdfaa3e9de1f5fc736f232b0c584f30f1f7d232d9 .www.mainwebsite.com

我如何包含一些PHP或JavaScript来清除这些cookie,以适用于加载网站的任何人,以便为过去访问该网站的人正常加载?

如果您可以给我一些前端框架的更多信息,我会更清楚地解释它。

可能的解决方案:在页面上加载添加脚本以删除cookie

$(window).load(function() {
  $.cookies.del('name_of_your_cookie');
});

这将删除cookie现在只需添加一个读取cookie命令和一个条件,该条件将检查cookie是否旧并需要删除。

您可以使用document.cookie读取cookie和解析以检查关键值。

如果有任何查询,请使用:)

相关内容

最新更新