Reactjs Fetch加载失败:具有200响应的POST Flask Restful API

Reactjs Fetch加载失败:具有200响应的POST Flask Restful API,reactjs,flask,fetch,Reactjs,Flask,Fetch,我正在尝试向我的Flask RESTful应用程序发出POST请求,其中所有GET请求都会毫无问题地响应,POST请求似乎会通过Restlet客户端和curl正确地响应,但根据浏览器chrome,它们无法获取加载失败:POST Python RESTful代码: login_parser = reqparse.RequestParser() login_parser.add_argument('email', required=True, help="Es necesario un email"

我正在尝试向我的Flask RESTful应用程序发出POST请求,其中所有GET请求都会毫无问题地响应,POST请求似乎会通过Restlet客户端和curl正确地响应,但根据浏览器chrome,它们无法获取加载失败:POST

Python RESTful代码:

login_parser = reqparse.RequestParser()
login_parser.add_argument('email', required=True, help="Es necesario un email")
login_parser.add_argument('password', required=True, help="Es necesaria una contraseña")
@app.route('/login', methods=['POST', 'GET'])
def login():
    args = login_parser.parse_args()
    try:
        user = Usuario.query.filter_by(email=args.email).first()
        if user and user.verify_password(args.password):
            token = user.encode_auth_token(user.id)
            if token:
                responseObject = {'status': 'success', 'message':'Successfully logged in.', 'token': token.decode()}
                return make_response(jsonify(responseObject)), 200
        else:
            responseObject = {'status': 'failed', 'message': 'Failed to login, usuario o contraseña incorrectos'}
            return make_response(jsonify(responseObject)), 400
    except Exception as e:
        responseObject = {'status': 'failed', 'message': e}
        return make_response(jsonify(responseObject)), 500
    return "Vaya uno a saber"
获取代码:

login = (event) => {
        event.preventDefault();
        let formData = new FormData();
        formData.append('email', this.state.username);
        formData.append('password', this.state.password);
        fetch(URL, {
            method: 'post',
            body: formData
        })
        .then(
            response => response.json
        ).then(
            json => {
                console.log(json.token);
            }
        )
    };
正如我所说,api可以从除获取之外的所有客户机上运行,这使我有机会获得响应代码response.status,但拒绝了我获得json响应的机会,witch必须是:

{'status':'success','message':'Successfully logging.','token':令牌}

对于我的英式英语,我真的很抱歉,但我正在努力学习。从现在起非常感谢你。 我在StackOverflow中的第一个问题应该是:

  .then(
     response => response.json() // .json() is a promise function
  )

你是最棒的。还有一个问题:尽管答案正确,但响应仍然很差。Fetch加载失败:POST,我应该对此做些改进以提高性能吗?不,不认为有更好的方法,列表中没有什么重要的内容。