首页 > 解决方案 > 401 未授权来自 Flask RESTAPI

问题描述

我正在尝试登录用户并为用户检索身份验证令牌;但是,我得到了 401 UNAUTHORIZED。研究这个问题时,我不断遇到“授权标头”不正确或无效;但是,我正在登录用户,但我还没有有效的身份验证代码。我不明白为什么 CORS 不允许通过以下方式请求此请求:

使用 AXIOS:

export const sendServer = (url, token, method, data, callback) => {
    let newUrl = `http://localhost:5000/${url}`
    axios({
        method: method.toUpperCase(),
        url: newUrl,
        data: data,
        headers: { 'Authorization': token }
    })
    .then(response => callback({ success: true, data: response.data }))
    .catch(error => callback({ success: false, error: error.toJSON() }))
}

在烧瓶方面:

from flask import Flask
from flask_restful import Api
from flask_cors import CORS
from config import ProdConfig
from auth import Authenticate, check_token

app = Flask(__name__)
app.config.from_object(ProdConfig)
CORS(app)

api = Api(app)
api.add_resource(Authenticate, '/login', endpoint="login")

'/login' 端点不需要身份验证。

class Authenticate(Resource):       
    def __init__(self):
        self.pwd_context = CryptContext(schemes=["pbkdf2_sha256"],default="pbkdf2_sha256",pbkdf2_sha256__default_rounds=30000)
                     
    def post(self):                
        if request.endpoint == 'login':      
        .......

任何帮助将不胜感激。

标签: pythonflaskflask-restful

解决方案


推荐阅读