我是一个非常新的反应者,我正试图掌握如何正确使用提取.我有这个Python瓶路线,我试图从后端打,看起来像这样:
@app.route('/api/v1',methods=['POST'])
def postTest():
if not request.json:
return "not a json post"
return "json post succeeded"
现在,当我与邮递员达到这一点时,我实际上能够获得成功的信息.
这是我的reactjs提取的样子:
returnFlaskPost() {
return fetch( 'http://localhost:5000/api/v1',{
headers: {
'Accept': 'application/json','Content-Type': 'application/json'
},method: 'POST',body: {
'user1':'1234'
}
});
}
每当我运行我的应用程序并尝试向控制台读取此功能时,我得到的结果是:
有人可以向我解释我做错了什么,我该怎么做才能解决.我将不胜感激.
最佳答案
这是跨源资源共享的问题.在这种情况下,您将尝试通过不同的URL访问API终结点,因为API本身已投放.顺便说一句,127.0.0.1:3000和127.0.0.1:5000被视为两个不同的URL,因此会导致您所引用的错误.因此,要解决此问题,您需要执行以下步骤:
@H_404_49@>安装Flask-CORS:
pip install flask-cors
>将此代码包含在Flask应用程序中(可能是__init__.py):
from flask_cors import CORS
CORS(app)
而已!