python - flask 启动后接受不到请求
大家讲道理
大家讲道理 2017-04-18 09:22:15
0
2
490

flask 启动后接受不到请求(postman: Could not get any response
There was an error connecting to http://...:...

代码结构:

server/
       run.py
       server/
              __init__.py
              log.py
              views/
                    __init__.py
                    container.py

run.py:

from docker_server import app
if __name__ == '__main__':
    app.run(port=8082, debug=True)

__init__.py under server dir:

from flask import Flask
app = Flask(__name__)
from server.views import container
app.register_blueprint(container.mod)

container.py:

mod = Blueprint('container', __name__, url_prefix='/container')
@mod.route("/", methods=['GET'])
def container_test():
    logger.debug("container test")
    return None

stackoverflow上也提过:

http://stackoverflow.com/ques...

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(2)
PHPzhong

Vous avez spécifié mod lors de la création de url_prefix='/container' Lorsque vous y accédez, ressemblez à ceci : http://localhost:8082/container/. Et lorsque vous utilisez un plan, vous devez également spécifier le répertoire où se trouve views. Un exemple du site officiel (si spécifié, le plan peut être introuvable) :

.
from flask import Blueprint, render_template, abort
from jinja2 import TemplateNotFound

simple_page = Blueprint('simple_page', __name__,
                        template_folder='templates')

@simple_page.route('/', defaults={'page': 'index'})
@simple_page.route('/<page>')
def show(page):
    try:
        return render_template('pages/%s.html' % page)
    except TemplateNotFound:
        abort(404)

De plus, le plan recommande de l'utiliser comme ceci :

app/
    your_blueprint/
        __init__.py
        views.py
    __init__.py
    

app/__init__/py :

from flask import Flask
def create_app():
    app = Flask(__name__)
    
    from .your_blueprint import your_blueprint as main_blueprint
    app.register_blueprint(main_blueprint)
    return app
    

app/your_blueprint/__init__.py :

from flask import Blueprint

main  = Blueprint('main', __name__)

from . import views
Ty80

Y accédez-vous sur la machine en cours d'exécution ? Sinon, il doit être inaccessible selon votre code. Tout comme la réponse dans stackoverflow, si vous souhaitez accéder depuis d'autres machines, vous devez configurer un paramètre de démarrage, sinon flask n'écoutera que les requêtes sur 127.0.0.1 par défaut.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal