2014-09-23 63 views
1

我正在研究需要访问CORS资源的应用程序。在应用程序中,用户可以更改他们的子域(即 - 从mysubdomain.myapp.com到mynewsubdomain.myapp.com)。浏览器在JS重定向后发送错误/以前的原始标题

服务器读取原始标题并将该子域添加到CORS请求的允许来源。

我的问题是,用户改变他们的子域名后,我进行一个简单的window.location.href = mynewsubdomain重定向,但是这(JS和风格)导致失败的资源加载与错误:

Font from origin 'http://localhost:7000' has been blocked from loading by Cross-Origin Resource Sharing policy: The 'Access-Control-Allow-Origin' header has a value 'http://old.myapp.dev' that is not equal to the supplied origin. Origin 'http://new.myapp.dev' is therefore not allowed access.

检查网络在Chrome中的请求中,我可以看到Request Headers中的Origin仍然是http://old.myapp.dev,这似乎是此处的问题。后续页面加载正常工作。我能做些什么吗?我可以指示浏览器使用正确的(新)子域作为原点吗?我应该以不同的方式重定向吗?

MDN对此进行了说明window.location.href:“请注意,像CORS这样的安全设置可能会阻止这种情况的发生。但没有太多的信息可以帮助解决这个问题。

回答

相关问题