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 attr
249浏览 · 2023-05-02 16:04:54
当请求的凭据模式为 'include' 时,响应中的 '[access](https://wenku.csdn.net/doc/6453091fea0840391e76c791?spm=1055.2569.3001.10083&kwd=access)-[control](https://wenku.csdn.net/doc/4zxi954drc?spm=1055.2569.3001.10083&kwd=control)-[allow](https://wenku.csdn.net/doc/64531692fcc539136803e951?spm=1055.2569.3001.10083&kwd=allow)-[origin](https://wenku.csdn.net/doc/6401ad1dcce7214c316ee565?spm=1055.2569.3001.10083&kwd=origin)' 头的值不能是通配符'*'。 XMLHttp[request](https://wenku.csdn.net/doc/6401abb2cce7214c316e92c9?spm=1055.2569.3001.10083&kwd=request) 发起的请求的凭据模式由 withCredentials 属性控制。
相关问题
这是一个跨域访问的错误提示,表示在使用XMLHttpRequest发起带有身份验证信息的请求时,服务器返回的响应头中不能包含通配符“*”作为Access-Control-Allow-Origin的值。这时需要通过设置withCredentials属性来控制XMLHttpRequest请求的身份验证模式。
这是一个跨域请求的问题。浏览器默认情况下,不允许从一个源(协议、域名、端口)向另一个源发起 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():