【问题标题】:About jQuery XMLHttpRequest CORS GET request?关于 jQuery XMLHttpRequest CORS GET 请求?
【发布时间】:2012-08-10 05:52:31
【问题描述】:

我必须将自定义 Authentication 标头(以及其他)附加到我的所有 jQuery Ajax 请求中。

我知道这可以通过以下方式完成:

beforeSend(jqXHR, settings) 函数

一个可用于修改jqXHR的预请求回调函数 (在 jQuery 1.4.x 中,XMLHTTPRequest)对象在发送之前。用这个 设置自定义标题等。 jqXHR 和设置映射作为 论据。

但是,阅读XMLHttpRequest 对象documentation(XMLHTTPRequest 对象的超集)有一句话让我很害怕:

请注意,AJAX 函数仅在 XHR 时返回或传递 XHR 对象 请求中实际使用了对象。例如 JSONP 请求 和跨域 GET 请求使用脚本元素而不是 XHR 对象。

CORS GET 请求使用脚本而不是 XHR 对象是什么意思?是不是意味着 GET 请求无法设置自定义标头?

【问题讨论】:

    标签: jquery ajax xmlhttprequest cors jqxhr


    【解决方案1】:

    应该可以在 GET 请求中发送自定义标头 - JSONP 使用脚本注入(脚本标签动态插入到您的文档中)而不是 XMLHttpRequest

    【讨论】:

    • 这听起来不错,我不使用JSONP...但是这句话的含义是什么?
    • 表示请求是使用
    • 所以,如果我理解正确,那没关系;即使使用 CORS,我也会用我的标头填充 jqXHR 并发送请求; jQuery 将完成其余的工作(使用
    • 如果您选择了 JSONP,您将无法添加标头,因为这不在 JQuery 的控制范围内,但如果您使用的是 jqXHR 对象,是的,您可以添加标头。试试看!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    • 1970-01-01
    • 2016-02-05
    • 1970-01-01
    • 2015-12-15
    • 2013-12-24
    • 2021-01-13
    相关资源
    最近更新 更多