我有两个MVC ASP.NET应用程序。我正在尝试从一个应用程序到另一个应用程序发出ajax POST请求。默认情况下,CORS应该被禁用,我在控制台中收到警报:
XMLHttpRequest无法加载http://localhost:2211/Home/Form。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:2282”访问。
所以一切都应该是正确的。但...
我意识到此请求已在http://localhost:2211上执行了该特定操作。怎么可能?为什么即使CORS被禁用也执行了该请求?
答案 0 :(得分:1)
向http://localhost:2211/Home/Form
发出了请求,但该请求中的响应未包含Access-Control-Allow-Origin
标头,导致浏览器拒绝为您处理响应。
在服务器响应向其发出的请求之前,提供标题,浏览器不知道请求是否被允许,即onus是否在浏览器以响应Access-Control-Allow-Origin
标头,而不是服务器。
您甚至可能会在此处看到不同的行为,具体取决于您使用的浏览器,例如:
在比较来源时,Internet Explorer不考虑该端口。