我在调查跨域问题,我有一些REST服务调用。 铬对此表示: 请求头域x-要求,与没有被允许接入控制允许头 这是我从网络上得到 - >头选项卡:跨域AJAX REST服务HTTP标题
Request URL: rest_url_on_other_domain
Request Method:OPTIONS
Status Code:200 OK
Request Headers:
Access-Control-Request-Headers:Origin, x-requested-with, content-type, accept
Access-Control-Request-Method:POST
Origin:http://localhost:8080
Response Headers
Access-Control-Allow-Headers:Content-Type, Accept
Access-Control-Allow-Methods:GET, POST
Access-Control-Allow-Origin:*
Access-Control-Max-Age:1728000
Cache-Control:no-cache, no-store
Connection:keep-alive
Content-Length:0
Date:Fri, 30 Dec 2011 11:29:12 GMT
Expires:-1
Pragma:no-cache
Server:nginx/1.0.2
能有人解释这个HTTP头文件?什么是问题 - 某些标头检查服务器失败或某些标头检查客户端(浏览器)失败。关于这个Access头文件的想法是什么?用简单的语言详细解释,只是为了让我感受到自己将要学习的余生。提前致谢!
但是,预检请求的想法是什么 - 他将获得这些头信息。对话是这样的:预检请求(Origin Header-“你支持哪些域名”,x请求 - 与 - “你是否支持XMLHttpRequests?”,...),当它们在预检响应中被重复时,意味着“是“对他们全部或者这样比喻是不好的。当浏览器发送真正的请求时 - 满足哪些条件(简单例子)。谢谢! – EnTrERy 2011-12-30 22:03:12
预检是浏览器问:“嗨服务器!我在这里有一个请求,它来自这个域,它使用这个http方法,它有这些请求头。如果我发送实际的请求,它很酷吗?”然后,服务器通过发回Access-Control-Allow- *标头来确认预检请求。它使用这些头文件而不是简单的确定的原因是,预检响应可以在第一次请求后被缓存。这样,每次请求都不需要发布预检,这可以节省带宽。 – monsur 2011-12-31 02:33:03
非常感谢您的详细解释! – EnTrERy 2011-12-31 12:29:55