当我从我的localhost到我的服务器执行ajax发布时,我一直遇到交叉问题:
OPTIONS http://domain:port/fileuploader/fileupload No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access. plupload.full.min.js:14
XMLHttpRequest cannot load http://domain:port/fileuploader/fileupload. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access.
我正在使用apache,所以我添加了这个以允许所有内容,但现在仍在使用:
Header add Access-Control-Allow-Origin *
Header add Access-Control-Allow-Headers "SOAPAction, Authorization, username, password, origin, X-Requested-With, Content-Type, XMLHttpRequest"
Header add Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
Header add Access-Control-Allow-Credentials: "true"
我的浏览器的响应标题是:
Request URL:http://domain:port/fileuploader/fileupload
Request Method:OPTIONS
Status Code:200 OK
Request Headersview source
Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8,ar;q=0.6
Access-Control-Request-Headers:content-type
Access-Control-Request-Method:POST
Cache-Control:no-cache
Connection:keep-alive
Host:domain:port
Origin:http://localhost
Pragma:no-cache
Referer:http://localhost/omnixuploader/index.html?dDocName=test8818&dDocTitle=test8818&dDocType=SiebelAttachment&dDocAuthor=SADMIN&lan=ara&files=test|jpg:png:txt|220,wwow|pdf:txt:zip|222&rand=19
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36
Response Headersview source
Allow:GET, HEAD, POST, TRACE, OPTIONS
Content-Length:0
Date:Thu, 09 Jan 2014 14:39:45 GMT
X-ORACLE-DMS-ECID:a3121f70a766128a:-422d6665:14370f7c3a3:-8000-000000000000057a
X-Powered-By:Servlet/2.5 JSP/2.1
我不明白为什么它不起作用?任何提示?
答案 0 :(得分:1)
您似乎正在配置http://localhost
以授权其他网站告知浏览器向其发出请求。
您需要告诉http://domain:port/
这样做。
X-Powered-By:Servlet/2.5 JSP/2.1
表示您可能正在使用Apache Tomcat。如何配置该服务器的描述为in answers to this question。
答案 1 :(得分:0)
首先尝试设置标题,然后添加其他标题:
Header set Access-Control-Allow-Origin *
Header add Access-Control-Allow-Headers "SOAPAction, Authorization, username, password, origin, X-Requested-With, Content-Type, XMLHttpRequest"
Header add Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
Header add Access-Control-Allow-Credentials: "true"