我借了一个图书馆sessionTimeout来建立一个标准"你会自动退出,你想保持登录吗?"对话框。
问题在于keepAliveUrl。我们在另一个站点上使用STS系统。 (如果需要,我可以控制两者)。老板说keepAliveUrl应该引用一个只有在登录时才能访问的.png文件。这样做应该刷新令牌(他说)。不幸的是,我在使用IE时遇到了以下问题。 Chrome似乎没有问题,但IE11确实如此。
以下错误:
SEC7118: XMLHttpRequest for https://OtherSite/lock.png required Cross Origin Resource Sharing (CORS).
SEC7120: Origin https://MySite not found in Access-Control-Allow-Origin header.
SCRIPT7002: XMLHttpRequest: Network Error 0x80070005, Access is denied.
我已经深入研究了CORS,听起来我们应该只允许访问
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*"/>
</customHeaders>
在STS服务器的web.config中。
以下是Chrome请求和响应标头,以防它们提供更多信息:
一般
Request URL:https://OtherSite/lock.png
Request Method:GET
Status Code:200 OK (from cache)
响应标头
Accept-Ranges:bytes
Access-Control-Allow-Origin:*
Content-Length:616
Content-Type:image/png
Date:Tue, 19 Apr 2016 21:19:34 GMT
ETag:"752713b2a791d11:0"
Last-Modified:Fri, 08 Apr 2016 15:02:40 GMT
Server:Microsoft-IIS/7.5
X-Powered-By:ASP.NET
请求标题
Provisional headers are shown
Accept:*/*
Origin:https://MySite
Referer:https://MySite/TranscriptPortal/
User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36
问题: 这是什么意思? Access-Control-Allow-Origin 中的通配符 允许每个请求通过。我错过了什么?