非假设但抽象的情况:
我有一个域www.foo.com,我正在向beta.foo.com发布AJAX POST。检查XHR对象,我看到200 OK的响应头,但没有响应文本 - 我甚至得到12B长的响应,这是我期待的确切响应(12个字符的字符串) - 但响应文本是空白。
如果这是一个跨域问题,为什么我得到200 OK,而且更好 - 为什么我看到PHP函数在beta.foo.com方面触发 - 但没有得到回复?
答案 0 :(得分:0)
您提到您正在检查responseText属性。您的回复是否可能采用XML格式?
如果您发送XML请求,或者响应类型为'text/xml'
,则会获得responseXML
的值。我相信 responseText
属性如果是XML格式,则可以为空。
google的随机示例:
答案 1 :(得分:0)
你无法跨越子域名ajax调用这么简单。有一种名为Same origin policy的东西阻止你这样做。如果您想对此问题进行排序,则需要使用JSONP或Iframes。
安装firebug,你会看到一个http 200代码和一个错误:该错误是SOP代理。