Ajax添加 acces control allow origin
时间: 2023-05-25 15:04:33 浏览: 51
为了确保浏览器的安全,限制了跨域资源共享(CORS)。如果你试图通过AJAX从一个源获取另一个源的资源,会发生跨域错误。为了解决这个问题,可以在服务器端添加 "Access-Control-Allow-Origin" 头。这个头告诉浏览器接受哪些源的请求。例如,如果你想允许任何域名的请求,可以将头设置为 "*":
```
Access-Control-Allow-Origin: *
```
这应该在服务器端的响应中添加。如果你使用PHP,可以添加以下行来设置响应头:
```php
header('Access-Control-Allow-Origin: *');
```
相关问题
Ajax Access-Control-Allow-Origin
Ajax Access-Control-Allow-Origin 是用于解决跨域请求的一个HTTP响应头字段。通过设置这个字段,服务器可以指定哪些域名被允许访问该资源。在你提供的引用中,有几种方法可以设置 Access-Control-Allow-Origin。
方法一:在请求控制器中添加以下代码:
```
header("Access-Control-Allow-Origin: *");
```
方法二:在请求控制器中添加以下代码:
```
response.setHeader("Access-Control-Allow-Origin", origin);
```
其中origin是请求头中的Origin字段的值。
方法三:在请求控制器中添加以下代码:
```
response.setHeader("Access-Control-Allow-Origin", "*");
```
以上是几种常见的设置 Access-Control-Allow-Origin 的方法。根据你的具体需求选择合适的方法即可。
ajax 添加Access-Control-Allow-Origin: 不起作用
根据提供的引用内容,可以得知如果前端附带身份凭证的请求,服务器的Access-Control-Allow-Origin不能设为*,需要设置Access-Control-Allow-Credentials为true,并且Access-Control-Allow-Origin的值必须为请求的源(Origin)或者允许的域名。因此,如果想要ajax添加Access-Control-Allow-Origin起作用,需要在服务器端设置Access-Control-Allow-Origin的值为请求的源或者允许的域名,并且设置Access-Control-Allow-Credentials为true。
以下是一个设置Access-Control-Allow-Origin和Access-Control-Allow-Credentials的示例:
```python
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route('/api', methods=['POST'])
def api():
response = jsonify({'message': 'success'})
response.headers.add('Access-Control-Allow-Origin', request.headers.get('Origin', '*'))
response.headers.add('Access-Control-Allow-Credentials', 'true')
return response
```
在上述示例中,我们使用Flask框架来实现一个简单的API接口。在接口返回的响应头中,我们设置了Access-Control-Allow-Origin的值为请求的源(request.headers.get('Origin', '*')),并且设置了Access-Control-Allow-Credentials为true。