問題タブ [wsgiref]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python3.0`wsgiref`サーバーが機能していません
wsgiref
Python3.0ではモジュールをまったく動作させられないようです。ただし、2.5未満では問題なく動作します。ドキュメントの例を試しても失敗します。それは非常に難しいので、私が行っている上記の印刷機能を持っていても、「from wsgiref.simple_server import make_server
」、何らかの理由で印刷されることはありません。実行時にエラーが発生することはなく、ブラウザに空白のページが表示されるだけで、いかなる種類のリクエストもログに記録されません。
誰かが問題が何であるか知っていますか?ありがとう!
python - WSGIREF を使用して POST をキャッチする方法
単純なフォームから POST データをキャッチしようとしています。
WSGIREF をいじるのはこれが初めてで、これを行う正しい方法が見つからないようです。
そして、投稿をキャッチするための適切な情報が明らかに不足している関数:
python - 環境 ['wsgi.input'] を使用する前に WSGI アプリが応答すると、TCP 接続のリセットが発生する
multipart/form-data
私たちの Web サービスでは、たとえば 4 MB を超える POSTを防ぐためのロジックを書きました。
要約すると、次のようになります (すべての WebOb の使用を取り除き、単純なバニラ WSGI コードに減らしました)。
示されているロジックは、単体テスト時に正しく機能します。しかし、4 MB を超える実際のファイルをこのエンドポイントに送信しようとするとすぐに、クライアント側で次のようなエラーが発生しました。
Error 101 (net::ERR_CONNECTION_RESET): Unknown error.
Google Chrome からThe connection to the server was reset while the page was loading.
Firefox から
wsgiref
Python 組み込みHTTP サーバーを使用すると、同じエラーが発生します。
事実: environ['wsgi.input'].read()
HTTP 400 で応答する直前に追加すると、接続のリセットの問題はなくなりました。もちろん、これは良い修正ではありません。入力を完全に消費するとどうなるかを示しているだけです。
私はHTTP: The Definitive Guideを熟読し、HTTP サーバーとクライアントを実装する際に TCP 接続を慎重に管理することが重要であるという興味深いガイドラインを見つけました。クライアントが反応してサーバーへのデータの送信を停止する機会が得られるように、close
ソケットを -ingする代わりにを実行することをお勧めしました。shutdown
おそらく、このような接続のリセットを防ぐ重要な実装の詳細が欠けているのでしょう。インサイト誰か?
あらすじを参照してください。
python - WSGI 出力を UTF-8 でエンコードするにはどうすればよいですか?
HTML ページを UTF-8 でエンコードされた Web ブラウザーに送信したいと考えています。ただし、次の例は失敗します。
トレースバックは次のとおりです。
エンコーディングを削除して単純に python 3 Unicode 文字列を返すと、wsgiref サーバーはブラウザがリクエスト ヘッダーで指定する文字セットでエンコードされているように見えます。ただし、すべての WSGI サーバーが同じことをするとは思えないので、この制御を自分で行いたいと考えています。UTF-8 でエンコードされた HTML ページを返すにはどうすればよいですか?
ありがとう!
python - Google アプリ エンジンで、フォーム フィールドを反復処理する方法 (python、wsgiref.handlers)
Python と wsgiref.handlers を使用すると、フォームから単一の変数を取得できますが、フォームのすべての変数を GET と POST から取得するにはどうすればよいですか? このようなものですか?
self.handler.request.fields のフィールド:
値 = self.handler.request.get(field)
ここでも、GET 要求のように、POST に含まれるフィールドとクエリ文字列のフィールドの両方を含める必要があります。
よろしくお願いします。
python - Python で簡単な Web サーバーを起動し、ブラウザーを同時に起動する
シンプルな Web サーバーをローカルで起動し、提供されたばかりの URL でブラウザーを起動したいと考えています。これはぜひ書きたいことで、
blocking
問題は、 wsgiref シンプル サーバーのオプションを設定する方法が見つからなかったことです。デフォルトではブロックされているため、ブラウザーは停止した後にのみ起動されます。最初にブラウザを起動すると、リクエストはまだ処理されていません。トルネードのような外部サーバーではなく、標準ライブラリの http サーバーを使用することをお勧めします。
python - wsgiref simple_server を使用する理由
ビルドする単純な webapp があり、mod_wsgi をいじり始めたところです。さまざまなチュートリアルで、最初の Hello World アプリは次のようになります。
その後、アプリには wsgiref を使用する wsgi サーバーが含まれます。次のバリエーションがあります。
アプリはサーバーなしで動作しますが、サーバーは何のためにあるのでしょうか?
python - wsgiref.simple_server がリクエストの content-type を 'text/plain' と報告するのに、何も送信されていないのはなぜですか?
client.py からの出力はtext/plain
、コンテンツ タイプ ヘッダーがサーバーに送信されていません。
なんで?
python - AppEngine の混乱 - CGI、WSGI 準拠?
よくわかりません。
AppEngine が WSGI を使用するアプリの実行を許可することになっている場合..
.. では、 PEP 333が存在しなければならないとしてリストしてenv
いる変数が含まれていないのはなぜですか?wsgiref.util.request_uri()
KeyError
私は基本的に、AppEngine または典型的な Apache + modwsgi セットアップのいずれかで動作する必要があるいくつかのライブラリを作成しています。単に準拠したアプリを作成するだけで十分だと思っていましたがWSGI
、AppEngine 自体は..そうではありませんか?