0

我们正在尝试通过 POST 进行跨域 AJAX 调用。如果我们直接尝试从中访问bbb.comaaa.com则会要求提供凭据。只有在提供凭据后,我们才能访问bbb.com. 现在以同样的方式,当对不同的域进行 AJAX 调用时,在这种情况下bbb.com,我会收到 403 禁止错误。

我尝试添加授权标头,现在在请求标头中,我看到了以下标头,但即使在拥有授权标头之后,我仍然遇到问题。

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。 .. authenticationindicator,authorizationtoken
Access-Control-Request-Me... POST
Authorization Basic TG9uZG9uOkJiZ0JlbjE4NTk=
Cache-Control no-cache
Host aaa.com
Origin bbb.com
Pragma no-cache
Proxy-Connection keep-alive
User-Agent Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/20100101 Firefox/17.0

有谁知道我们如何解决 403 禁止问题?

4

4 回答 4

3

听起来像是跨域问题 - https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS

您可能想要添加从 bbb.com 返回的标头,如下所示:

Access-Control-Allow-Origin: *

希望有帮助,克里斯

于 2013-01-10T11:28:06.067 回答
1

您不能进行跨域 AJAX 调用。

如果您不想从另一个域获取一些信息作为您自己的信息,您可以使用 PHP 作为服务器站点,然后对您自己的 php 脚本进行 ajax 调用。

另一种解决方案是使用JSONP

于 2013-01-10T11:22:46.237 回答
1

ajax 不允许跨域调用。为此目的使用 jsonp。 http://jsonp.jit.su/

于 2013-01-10T11:23:20.857 回答
1

Ajax 不允许跨域调用。如果您想这样做,您可以让您的 Ajax 代码调用 PHP(或任何您选择的)代码,该代码可以访问 bbb.com,您可以将此数据返回给客户端。

于 2013-01-10T11:26:09.387 回答