【问题标题】:Getting "Permission Denied" error in Internet Explorer for CORS PATCH request在 Internet Explorer 中为 CORS PATCH 请求获取“权限被拒绝”错误
【发布时间】:2014-10-19 01:05:38
【问题描述】:

真的被这个bug弄糊涂了。当我尝试发出跨域 PATCH 请求(使用 jQuery.ajax)时,所有版本的 IE,即使是那些支持 CORS 的版本,都会抛出“权限被拒绝”错误。所有其他方法(甚至 PUT)都可以正常工作,但 PATCH 在 send() 调用上会立即触发错误。

考虑到IE以后版本支持CORS,据说支持所有方法类型,CORS + PATCH会导致错误有什么原因吗?

(是的,Access-Control-Allow-Methods 设置为 GET, POST, DELETE, PATCH, PUT, OPTIONS,所以我认为这不是问题。)

【问题讨论】:

标签: jquery internet-explorer cross-domain http-patch


【解决方案1】:

IE 需要 P3P 策略标头才能使 CORS 正常工作。试试这个:

快速解决方案尝试

确保在从服务器发送的标头中找到它:

P3P: CP="NON DSP LAW CUR ADM DEV TAI PSA PSD HIS OUR DEL IND UNI PUR COM NAV INT DEM CNT STA POL HEA PRE LOC IVD SAM IVA OTC"

不那么快的解决方案

阅读这篇文章:Craft a P3P policy to make IE behave

【讨论】:

    猜你喜欢
    • 2011-08-09
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 2020-01-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多