2017-08-30 4 views
-1

に非常にシンプルなフラスコアプリをフラスコAPIを実行することができません。..ブラウザ

from flask import Flask 
app = Flask(__name__) 
    @app.route('/api') 
def main(): 
    print("Welcome!") 
    print(10+2) 
if __name__ == "__main__": 
    app.run() 

はこのコードを実行さ が(終了するにはCtrlキーを押しながらC)http://127.0.0.1:5000/上で実行している私を示し

しかし、アクセスできませんブラウザのこのapi。

+0

このインデントは奇妙に見えます。正しく動作するためには、 '@ app.route'行は' def main(): '行と同じインデントレベルでなければなりません。あなたのファイルは現在インデントされていますか? – bouteillebleu

+1

「アクセスできません」とはどういう意味ですか?もっと正確に何が起こるか説明できますか? – filaton

+1

まず、あなたのルートは 'api'なので、http://127.0.0.1:5000/apiを使ってアクセスしたいと思います。'/'に登録されたルートはありません。第二に、 'main'関数は何も返しません。 'print'をコンソールに出力するには、Webブラウザに表示されるものを返す必要があります。 –

答えて

1

printの代わりにreturnを使用する必要があります。これは、フラスコアプリを起動した端末に印刷し、実際にAPIを使用しているクライアントに何も送信しないためです。

はここで働い例です:

from flask import Flask 
app = Flask(__name__) 

@app.route('/api') 
def main(): 
    return "Welcome!" 

if __name__ == "__main__": 
    app.run() 

その後Wecome!メッセージを見にlocalhost:5000/apiに行きます。

フラスコを始めるには、公式ドキュメントにquickstartチュートリアルを強くお勧めします。

+0

はい。あなたは人生を救います。あなたに感謝しています...同じ主題の記事をいくつかお勧めしますか? – user3193177

+0

@ user3193177うれしいです。私は非常にあなたがここから始めることをお勧めします:http://flask.pocoo.org/docs/0.12/quickstart/ – MedAli

+1

@ user3193177これも良いです:https://blog.miguelgrinberg.com/post/the-flask-mega tutorial-part-i-hello-world – dmitrybelyakov