Рубрики
Без рубрики

Изменение базового URL-адреса

Недавно у меня есть проблема при создании API с помощью колбы. Основной синтаксис для создания API с использованием FLA … Tagged Flask, FlaskrestPlus, Python.

Недавно у меня есть проблема при создании API с помощью колбы.

Основной синтаксис для создания API с использованием Flask-RestPlus:

from flask import Flask
app = Flask(__name__)

from flask_restplus import Api
api = Api()
api.init_app(app)

Однако этот базовый синтаксис переопределят маршрут индекса на вашей веб-странице. Итак, чтобы исправить это, План следует импортировать.

from flask import Flask, Blueprint
from flask_restplus import Api

app = Flask(__name__)
blueprint = Blueprint('api', __name__, url_prefix='/v1')
api = Api(blueprint,
            title="Enrollment API",
            version='v0.1',
            description='Enrollment API for CRUD operation'
        )
app.register_blueprint(blueprint)

Отсюда API Base URL больше не переоценивает маршрут индекса. Теперь давайте добавим API, чтобы получить пользовательские данные, потянув JSonify и импортируя модель.

models.py

import flask
from application import db
from werkzeug.security import generate_password_hash, check_password_hash

class User(db.Document):
    user_id     = db.IntField(unique=True)
    first_name  = db.StringField(max_length=50)
    last_name   = db.StringField(max_length=50)
    email       = db.StringField(max_length=30, unique=True)
    password    = db.StringField()

    def set_password(self, password):
        self.password = generate_password_hash(password)

    def get_password(self, password):
        return check_password_hash(self.password, password)

route.py

from application.models import User
from flask import jsonify

@api.route('/api','/api/')
class GetAndPost(Resource):
    ''' Get All '''
    def get(self):
        return jsonify(User.objects.all())

Из кода выше, теперь API может быть доступ через Localhost: 5000/V1/API Отказ API вернет всех пользователей в JSONFormat

PS: Werkzeug нужно понизить до 0,16.1, чтобы использовать Flake_RestPlus Установка PIP.16.1

Дополнительная информация: https://github.com/noirbizarre/flask-restplus/issues/286

Оригинал: “https://dev.to/flyingduck92/changing-flask-restplus-base-url-1g6k”