【发布时间】:2012-03-15 02:12:28
【问题描述】:
我很想看看用什么最小的跨浏览器 Javascript 代码(jQuery 也可以)来验证我希望发送跨域 AJAX 请求的站点是否支持CORS。
我知道 jQuery 有一种方法可以检查 浏览器 是否支持它。但我真的希望能够检查远程站点是否也支持它。
我以为我只需要检查 HTTP 标头,但是当尝试向不特别支持它的站点执行跨域请求时,XHR 当然会抛出异常。
但是有没有办法检查XMLHttpRequest 抛出的异常是由于站点不支持CORS 而不是其他问题? (它不必支持 XDomainRequest。)
无论如何,我不确定使用 AJAX 获取 HTTP HEAD 的最佳最小/最快跨浏览器方式,我认为这是一种轻量级方式,而不是获取页面等。
用例:一旦我知道浏览器和 AJAX 提供程序是否支持CORS,我可以选择是发送更有功能的JSON/CORS 请求还是在必要时回退到JSONP 请求。
【问题讨论】:
标签: javascript exception xmlhttprequest cross-domain cors