Добрый день. Есть простое приложение на Flask:
api.py
from flask import Blueprint
from flask import url_for, jsonify
api = Blueprint('api', __name__)
@api.route('/', methods=['GET', 'OPTIONS'])
def index():
links = dict()
links['docs'] = url_for('.docs')
return jsonify(_links=links)
@api.route('/docs/', methods=['GET'])
def docs():
doc = {
" key": "value"
}
return jsonify(doc), 200
app.py
from flask import Flask, request
from .api import api
app = Flask(__name__)
app.register_blueprint(api, url_prefix='/api')
Если запускать приложение через app.run()
from .app import app
if __name__ == '__main__':
app.run(debug=True)
тогда при выполнении запроса /api/ мне в ответ приходит ресурс с нормальной ссылкой
/api/docs/
Если же я запускаю приложение на сервере через WSGI:
from .app import app
from flup.server.fcgi import WSGIServer
if __name__ == '__main__':
WSGIServer(app, bindAddress='/tmp/fcgi.sock').run()
при выполнении запроса /api/ мне в ответ приходит ресурс со ссылкой
/api/api/docs/.
Откуда берется дубликат? С чем это может быть связано и как лечить?