python - 所有 Flask 端点返回 404(未找到)
问题描述
我有一个带有 12 个端点的 API,它工作正常,然后端点开始失败,现在都返回 404 状态代码。这是我的一些文件 My run.py
import os
from app import create_app
config = os.getenv('APP_SETTINGS')
app = create_app(config)
if __name__ == "__main__":
app.run(debug=True)
我像这样在app.py中注册我的端点
from flask import Flask
from .api.v2.views.userview import auth
def create_app(config):
'''Creates all Flask configurations and returns app.
Expects config name'''
app = Flask(__name__, instance_relative_config=True)
app.config['JSON_SORT_KEYS'] = False
app.config.from_object(app_config[config])
app.config.from_pyfile('config.py', silent=True)
app.url_map.strict_slashes = False
app.register_blueprint(auth)
return app
最后是我的端点user.py
from flask import request, jsonify
from flask import Blueprint
from ..models.usermodel import UserModel
usr_obj = UserModel()
auth = Blueprint('auth', __name__, '/api/v2')
@auth.route('/auth/signup', methods=['POST'])
def user_signup():
fullname = request.json['fullname']
username = request.json['username']
email = request.json['email']
password = request.json['password']
data = usr_obj.inituser(fullname, username, email, password)
return jsonify(data), 201
当我尝试在版本 1 (/api/v1) 中运行此端点或任何其他端点时,我收到 Not Found 错误。我也尝试过这个解决方案,但没有成功。
解决方案
我犯了一个愚蠢的错误蓝图声明应该是
auth = Blueprint('auth', __name__, url_prefix='/api/v2')
推荐阅读
- laravel - IE 和 Safari 上的 Vuejs Laravel 空白页
- android - 工作经理(如果连接到 WFI 并连接到蜂窝网络)
- java - 如何将俄罗斯 WSDL xml 解析为 java 对象
- reactjs - 如果 prop 是组件,如何渲染组件?
- python-3.x - 分组概率分布
- python - 在 Django 可重用应用程序中创建“可选”模型的最佳方法
- javascript - 如何从具有相同 id 的动态创建的元素中获取 select .val() 或 div .text()?
- python - 逐行读取 JSON 字典
- c# - 运行控制台应用程序进行语音识别时的 RaceOnRCWCleanup
- matlab - Matlab以EPS格式保存图形