2016-11-15 8 views
0

Python WebプロジェクトにBottleフレームワークを使用したいと思います。私はこれの初心者です。だから、まずそれがどのように機能するのか理解したい。ボトル内のどの機能が無限の待機要求を提供していますか?

シンプルなアプリは以下のようになります。

from bottle import route, run 

@route('/hello') 
def hello(): 
    return "Hello World" 

run(host='localhost', port=5000, debug=True) 

私はbottle.pyrun機能が見つかりましたが、ブラウザからの要求を期待するコードのブロックがどこにあるか私は理解していません。たぶん私は何かを理解していないかもしれません。そういうわけで、このメフハニズムの基本的なことを私に説明することができたのかもしれません。

+2

'bottle'は、ブラウザ_from_すべての要求を行うことはできません。 _server_です。それはブラウザの要求に答える。 _client-side_ソフトウェアだけが 'ブラウザからリクエストを送ることができますが、' bottle 'はサーバーそのものです。ブラウザにデータを送信するだけです。それだけです。 – ForceBru

+0

実際に何をしたいですか?詳細をご記入ください。コードの構文の形式で提供した情報は、さらに混乱します。いくつかの説明は役に立ちます –

答えて

0

HTTPはリクエストレスポンスに基づいています。 リクエスト - >ブラウザ、レスポンス - >サーバー(サーバーはあなたのケースではボトルです)。 サーバーがクライアント(ブラウザ)への応答を提供すると、ブラウザからの通信が終了します。これが通常のHTTP方法です。 たとえば、ブラウザとサーバーの間に継続的な接続を維持して、ブラウザにリアルタイムの更新を提供する場合(ブラウザは更新プログラムを要求する必要はなく、サーバーはブラウザにその情報を送信します)それはWebsocketsでしょう。ここで

はボトルでWebSocketをのためのドキュメントです: https://bottlepy.org/docs/dev/async.html#finally-websockets

+0

ありがとう、私は継続的な接続を維持したくありません。私はちょうどブラウザとの単一のコミュニケーションを提供する** bottle.py **の機能を見つけたいと思っています。そして、私は、接続が維持されていない場合、どのようにサーバーからブラウザからの要求が応答するかを理解したい。 – Ilya

+0

bootleを実行すると、開発サーバーが起動します。 run(host = 'localhost'、port = 5000、debug = True)を実行します。これにより、ポート5000上のローカル開発サーバーが起動します。ブラウザのアドレスバーにlocalhost:5000と入力すると表示されます。あなたがurl localhost:5000/helloに行くと、ブラウザのhello関数がブラウザから呼び出され、サーバはリクエストに応答します。 – matyas

関連する問題