相关疑难解决方法(0)

在302重定向集之后的AJAX调用原点为null

我正在从域A到域B进行AJAX调用.

我的域B检查A是否在允许的域列表中并设置Access-Control-allow-Origin为域A.到目前为止,这么好.

域B通过使用Location报头向域C发送302重定向来响应该请求.

AJAX调用遵循重定向到域C,但具有标题:Origin: null.

我希望在origin执行重定向之后将标头设置为域A.

任何人都可以向我解释为什么原点设置为null而不是域A?

  1. 从域A到B的请求

    GET / HTTP/1.1
    Host: domain-B.com
    Origin: http://domain-A.com
    
    Run Code Online (Sandbox Code Playgroud)
  2. 来自域B的回复:

    Access-Control-Allow-Origin: http://domain-A.com
    Location: http://domain-C.com
    
    Run Code Online (Sandbox Code Playgroud)
  3. AJAX调用遵循重定向到域C:

    GET  HTTP/ 1.1
    Host: domain-C.com
    Origin: null
    
    Run Code Online (Sandbox Code Playgroud)

ajax redirect http cross-domain cors

21
推荐指数
1
解决办法
8448
查看次数

什么时候Firefox在POST请求中将Origin标头设置为null?

正如你可以看到从这个Bugzilla的线程(和),Firefox不总是在POST请求发送Origin标.RFC规定不应在某些未定义的"隐私敏感"上下文中发送它.Mozilla 在这里定义了这些上下文.

我想知道的是,这些是Firefox不会发送Origin标头的唯一情况.据我所知它也不会发送它在跨源POST请求(虽然Chrome和IE将),但我无法在文档中确认.它是否在我遗漏的地方列举?

谢谢.

firefox http cross-domain cors fetch-api

12
推荐指数
2
解决办法
8102
查看次数

AWS S3 CORS 403 OPTIONS请求出错

我试图从ajax请求访问驻留在S3中的html文件,我收到403错误.

我在线阅读AWS,如果我这样做,我需要设置AWS CORS规则来修复403错误.

但是,我已经尝试了两天而且没有任何运气.这是我的CORS配置:

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <ExposeHeader>XMLHttpRequest</ExposeHeader>
    <AllowedHeader>x-csrftoken</AllowedHeader>
 </CORSRule>
 </CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)

我的HTTP请求如下:

Accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Access-Control-Request-He...    x-csrftoken
Access-Control-Request-Me...    GET
Connection  keep-alive
Host    xxxxxxxxx.cloudfront.net
Origin  http://localhost:8000
User-Agent  Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:18.0) Gecko/20100101 Firefox/18.0
Run Code Online (Sandbox Code Playgroud)

谁能帮我看看我错过了什么?

谢谢!

ajax amazon-s3 amazon-web-services http-status-code-403

9
推荐指数
2
解决办法
3233
查看次数

如何使AJAX请求看起来像常规的正常请求

$.ajax必须设置哪些参数来尝试将AJAX请求作为正常请求进行掩码?我想这与正确的标题有关.

我认为问题的一个重要部分是当处理本地.html文件时,jQuery将header-value设置为Originto null.

有没有办法取出Origin-header?

在这一刻,如果我通过网络浏览器浏览它并且当我执行jQuery AJAX请求时,我会从同一个URL获得不同的结果.

ajax jquery request-headers http-headers

3
推荐指数
2
解决办法
7818
查看次数