Apache和Headers的存在以响应Ajax请求

阿德里安·科瓦奇(Adrian Covaci)

我试图找出跨域API问题。我有一个使用Sencha Touch 2.3.1创建的应用程序,该应用程序使用Ajax从远程服务器获取数据。我面临的问题是,针对本地服务器的所有Ajax请求都不包含响应中的所有标头。在远程服务器上,一切正常,并且标题正常。

这是两个打印,分别显示了每个服务器发送和接收的标头

1-从本地主机发送和接收的标头(http://local.api-vhost

标头收到:

Connection      Keep-Alive
Content-Length  274
Content-Type    text/html; charset=iso-8859-1
Date            Mon, 07 Jul 2014 10:58:54 GMT
Keep-Alive      timeout=5, max=100
Location        http://local.api/fa/?ref.agent/lista-clienti&_dc=1404730734262
Server          Apache/2.2.17 (Win32) PHP/5.3.3

标头已发送:

Accept          text/html,application/xhtml+xml,
                application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language ro-ro,ro;q=0.8,en-us;q=0.6,en-gb;q=0.4,en;q=0.2
Content-Length  33
Content-Type    application/x-www-form-urlencoded; charset=UTF-8
Host            local.api
Origin          http://sencha.local
Referer         http://sencha.local/fisa-agenti/index.html
User-Agent      Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 
                Firefox/30.0

2-从远程服务器发送和接收的标头(http://adgarage.ro

标头已收到

Accept-Ranges                   bytes
Access-Control-Allow-Cred...    true
Access-Control-Allow-Orig...    *
Age                             0
Connection                      keep-alive
Content-Length                  375
Content-Type                    application/json
Date                            Mon, 07 Jul 2014 10:58:52 GMT
Server                          Apache/2.2.22 (Unix) mod_ssl/2.2.22 
                                OpenSSL/0.9.8e-fips-rhel5
Via                             1.1 varnish
X-Powered-By                    PHP/5.3.13
X-Varnish                       562862498

标头已发送

Accept          text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language ro-ro,ro;q=0.8,en-us;q=0.6,en-gb;q=0.4,en;q=0.2
Host            adgarage.ro
Origin          http://sencha.local
Referer         http://sencha.local/fisa-agenti/index.html
User-Agent      Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 
                Firefox/30.0

注意Access-Controll-Allow标题。从接收到的标头容器中缺少它localhost

这是我的.htaccess文件:

Header set Access-Control-Allow-Origin *
Header set Access-Control-Allow-Credentials: true 

这两个服务器上的文件相同。headers_module在本地计算机上有能力。

我注意到的另一件事是,本地响应状态是,301 moved Permanently而远程服务器收到的响应状态是200 Ok

我想念的是什么?

谢谢!

阿德里安·科瓦奇(Adrian Covaci)

我发现了问题。本主题所述,由于301 Moved Permanently状态,未发送标头

发出了本地请求,http://local.api/fa?ref.agent/...而不是http://local.api/fa/?ref.agent/...-请注意/fa第一个链接之后缺少斜杠

现在一切正常。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章