2011-01-21 9 views
0

で_POSTクエリ文字列またはフォーム値の同等物へのアクセス、私はそうのようなクエリ文字列の値を取得することができます。

ので、リクエストURIがhttp://example.com/index.php?foo=bar

<?php echo $_GET['foo']; //bar ?> 
ある場合

Pythonで上記のコードをどのようにエミュレートできますか? (重いWebフレームワークを使用していません)

Pythonでこれを行う最も簡単な方法については、簡単な文書がありません。着信HTTPリクエストを処理する標準のPythonライブラリがありますか?私はPythonがテンプレート言語ではないことを知っていますが、ウェブ上でのその幅広い使い方は、これを扱う簡単な方法があるはずであることを示唆しています。

答えて

3

すべてのWebフレームワークは、それとは異なります。あなたが言うように、Pythonはテンプレート言語ではないので、HTTPリクエストを自動的に処理する方法はありません。

標準ライブラリの一部であり、cgi.FieldStorage()経由でPOSTしたデータにアクセスするために使用できるcgi moduleがありますが、標準CGI経由でアプリを提供するのはひどく非効率で、非常に小規模のものにしか適しません。

もっと良いアイデアは、単純なWSGIフレームワーク(WSGIはPythonでWebアプリケーションを提供する標準です)を使用することです。私の現在のお気に入りはflaskですが、私はbottleについても良いことを聞いています。

+0

フラスコを解読できません。フラスコで上記のコードをどのように実装しますか? – Yahel

+0

Flaskドキュメントには、[良い例があります](http://flask.pocoo.org/docs/quickstart/#the-request-object)があります。 –

+0

PHPの '$ href = $ _GET ['cid'];'を 'WSGI'で使用するのと同等ですか?私は 'ボトル'を使用しています。 – user1063287

0

あなたの "非重いウェブフレームワーク"は、通常、あなたにリクエストパラメータを渡すべきであり、request.GETかそのようなものからget文字列にアクセスすることができます。

+0

あなたは、その旨の簡単なコードサンプルをお持ちですか? – Yahel