![](/img/trans.png)
[英]Can't send POST request to a REST API from a Chrome extension
[英]Can't send authorization token to flask api with post request
我正在使用flask使用python編寫的API,但是在發送帶有授權的發布請求時遇到問題。 我正在使用axios發出請求。
我幾乎嘗試了在此鏈接上找到的所有內容[ 解決與Flask的跨源資源共享 ]
from flask import Flask, request, jsonify
from flask_cors import CORS, cross_origin
app = Flask(__name__)
CORS(app, resources={r"/*": {"origins": "*"}})
@app.route("/test", methods=["POST","GET"])
# @cross_origin is commented for the get request
@cross_origin(methods=["POST"], allow_headers=['Content-
def test():
return jsonify({'success':True})
if __name__ == "__main__":
app.run(host="0.0.0.0", debug=True)
// change post to get
axios.post('http://localhost:5000/test', {
// withCredentials: true,
headers: {
'Access-Control-Allow-Headers': 'Authorization',
'Authorization': 'token'
}
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
當我使用get但不發布時,授權令牌出現在標題中
獲取請求: https : //i.imgur.com/2COOjbj.png
發布請求: https : //i.imgur.com/eWaFceS.png
編輯(已解決?)
並不是真正的解決方案,但我改用fetch並解決了我的問題,但我不知道為什么會首先發生
您只需要使用http://localhost:5000/test
更改*
,就應該允許訪問特定的域。
另一種方法是使用默認參數初始化flask-cors
:
from flask import Flask
from flask_cors import CORS
app = Flask(__name__)
CORS(app)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.