Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 跨域AJAX导致403禁止_Javascript_Jquery_Ajax_Http Headers - Fatal编程技术网

Javascript 跨域AJAX导致403禁止

Javascript 跨域AJAX导致403禁止,javascript,jquery,ajax,http-headers,Javascript,Jquery,Ajax,Http Headers,我们正试图通过POST进行跨域AJAX调用。如果我们直接尝试从aaa.com访问bbb.com,它将要求提供凭据。只有在提供凭据后,我们才能访问bbb.com。现在以同样的方式,当对不同的域进行AJAX调用时,在本例中,bbb.com我收到一个403禁止的错误 我尝试添加授权标头,现在在请求标头中,我看到了下面的标头,但即使有了授权标头,我仍然存在问题 接受text/html、application/xhtml+xml、application/xml;q=0.9,/;q=0.8 接受编码gzip

我们正试图通过POST进行跨域AJAX调用。如果我们直接尝试从
aaa.com
访问
bbb.com
,它将要求提供凭据。只有在提供凭据后,我们才能访问
bbb.com
。现在以同样的方式,当对不同的域进行AJAX调用时,在本例中,
bbb.com
我收到一个403禁止的错误

我尝试添加授权标头,现在在请求标头中,我看到了下面的标头,但即使有了授权标头,我仍然存在问题

接受text/html、application/xhtml+xml、application/xml;q=0.9,/;q=0.8
接受编码gzip,放气
接受我们的语言,嗯;q=0.5
访问控制请求他。。。authenticationindicator,authorizationtoken
访问控制请求我。。。张贴
授权基础TG9uZG9uOkJiZ0JlbjE4NTk=
缓存控制无缓存
主机aaa.com
来源bbb.com
Pragma无缓存
代理连接保持活动状态
用户代理Mozilla/5.0(Windows NT 6.1;rv:17.0)Gecko/20100101 Firefox/17.0


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

您不能进行跨域AJAX调用

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


另一个解决方案是使用

您不能进行跨域AJAX调用

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


另一个解决方案是使用ajax,它不允许跨域调用。为此使用jsonp。
ajax不允许跨域调用。为此使用jsonp。
Ajax不允许跨域调用。如果您想这样做,您可以让您的Ajax代码调用可以访问bbb.com的PHP(或您选择的任何代码),然后您可以将这些数据返回给客户端。

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

听起来像是一个跨源问题-

您可能希望在bbb.com返回的标题中添加一些内容,如下所示:

Access-Control-Allow-Origin: *
希望有帮助,
克里斯

听起来像是一个跨来源的问题-

您可能希望在bbb.com返回的标题中添加一些内容,如下所示:

Access-Control-Allow-Origin: *
希望有帮助,
Chris

当您从bbb.com(相同的orogin)提出相同的请求时,bbb.com会如何答复?403不是由同源策略限制生成的,而是由您的服务器在bbb.com上提供的,因为它的配置等。您可能正在寻找JSONP解决方案或设置服务器端代理来处理对其他域的请求。看看这里:当你从bbb.com(同样的orogin)提出同样的请求时,bbb.com会做出什么回应?403不是由同源策略限制生成的,而是由您的服务器在bbb.com上提供的,因为它的配置等。您可能正在寻找JSONP解决方案或设置服务器端代理来处理对其他域的请求。看看这里:是的,但这是一个post请求,不是get,所以我不能在启用CORS的情况下使用jsonpYou。是的,但这是一个post请求,不是get,所以我不能在启用CORS的情况下使用jsonpYou。当然,这只有在OP可以修改
bbb.com
时才有效。当然,这只有在OP可以修改
bbb.com
时才有效。