Access to XMLHttpRequest at 'http://192.168.0.139:5000/login/' from origin 'http://localhost:9527' has been blocked by CORS policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
时间: 2024-04-01 07:35:49 浏览: 155
这是一个跨域请求的问题。浏览器默认情况下,不允许从一个源(协议、域名、端口)向另一个源发起 AJAX 请求,这是出于安全考虑。您需要在服务器端添加一些响应头信息来允许跨域请求。例如在响应头中添加 Access-Control-Allow-Origin 字段,指定允许访问的源。如果您的请求是带有凭据(如 cookie)的,则在 Access-Control-Allow-Origin 字段中不能使用通配符“*”,而需要指定具体的允许访问的源。
您可以在服务器端添加如下代码来解决这个问题:
```
from flask import Flask, jsonify
from flask_cors import CORS
app = Flask(__name__)
CORS(app, supports_credentials=True)
@app.route('/login/', methods=['POST'])
def login():
# 处理登录逻辑
return jsonify({'status': 'success'})
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
```
其中,CORS(app, supports_credentials=True) 是添加跨域支持的关键语句。supports_credentials=True 表示允许带有凭据的请求。
相关问题
:9527/#/login?redirect=%2Fdashboard:1 Access to XMLHttpRequest at 'http://192.168.0.139:5000/login/' from origin 'http://localhost:9527' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
这是一个跨域访问的问题。在前端向后端发起请求时,如果请求的域名、协议、端口号与当前页面的域名、协议、端口号不同,就会触发跨域访问,此时需要后端设置相关的响应头信息来允许跨域访问。在这个问题中,后端没有设置允许跨域访问的响应头信息,所以浏览器会拒绝该请求。解决方法可以是在后端设置响应头,也可以在前端通过代理来实现跨域访问。
Access to XMLHttpRequest at 'http://192.168.3.100:9282/courier/listCourier' from origin 'http://localhost:93' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.怎么解决
这是一个跨域资源共享(CORS)的问题,需要在服务器端添加响应头信息,允许来自 http://localhost:93 的请求访问 http://192.168.3.100:9282/courier/listCourier。可以在服务器端配置中添加 Access-Control-Allow-Origin 头信息,或者使用代理服务器来解决该问题。
阅读全文