問題タブ [webob]

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.

0 投票する
2 に答える
703 参照

python - ピラミッド - レスポンスの app_iter 内でスレッドローカルが機能しない

次のサンプル コードを使用します。

現在のリクエストを取得します: None。それで、threadlocal内部では動作しませんapp_iterか?threadlocalビューから離れたいくつかのレイヤーにアクセスする必要がある実際のコードがあり、request変数を渡すのは面倒です。

0 投票する
2 に答える
1450 参照

python - WebOb を使用してファイルアップロード POST HTTP 要求を作成するにはどうすればよいですか?

私は Ian Bicking の WebOb を使用して、Python Web アプリケーション テストを作成する際に非常に効果的です。を呼び出しwebob.Request.blank('/path...')、結果のリクエスト オブジェクトのget_response(app)メソッドを使用して Web アプリケーションを呼び出します。返された応答オブジェクトで、HTTP 応答のステータス コード、コンテンツ タイプ、本文などを確認できます。POST リクエストの作成も非常に簡単です。

しかし、ここでちょっとしたパズルに出くわしました。ファイルのアップロードを予期する Web アプリケーションでビューをテストする必要がありますが、WebOb がその特定の種類の POST をどのように表しているのかよくわかりません。内部に 1 つ以上のファイル アップロード フィールドを含む WebOb リクエストを作成する方法を知っている人はいますか?

0 投票する
1 に答える
201 参照

python - GAE Python 2.7、_io モジュールなし?

WebOb は io をインポートし、io は SDK によってブロックされている _io をインポートするため、Python 2.7 ランタイムで WebOb 1.1 をインポートできません。_io をホワイトリストに登録する方法はありますか? 明らかにブラックリストに載せるべきではありません。

0 投票する
1 に答える
334 参照

python - Pasteアプリ内からneo4j.GraphDatabaseを作成すると、セグメンテーション違反が発生するのはなぜですか?

次のコードにより、Javaがセグメンテーション違反になります。

再現するには、まずそのコードをファイル(app.pyなど)に保存してから、を実行しますpython app.py。次に、ブラウザでhttp:// localhost:8080を試してください。Javaクラッシュハンドラが表示されます。

Javaスタックトレースの先頭は次のようになります。

これはPythonで、Javaの下でneo4j.GraphDatabaseJPypeがneo4jを探しに行くきっかけになっていると思います。EmbeddedGraphDatabase

インタラクティブなPythonセッションでこのコードを実行しても、セグメンテーション違反は発生しません。

おそらくそれは、その例では貼り付けを完全に避けているためです。おそらくこれは、Pasteがneo4jの邪魔になるスレッドを使用することと関係がありますか?私はneo4jフォーラムでやや類似した問題に気づきました:http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-CPython-Pylons-and-threading-td942435.html

...しかし、それはシャットダウン時にのみ発生します。

0 投票する
2 に答える
1685 参照

python - wsgiで大きなファイルのアップロードをどのように制限しますか?

wsgi アプリでファイルのアップロードを安全に処理する最善の方法を理解しようとしています。多くのソリューションでは、cgi モジュールの FieldStorage を使用してフォーム データを解析する必要があるようです。FieldStorage について私が理解していることから、一時ファイルにデータをストリーミングすることにより、舞台裏で少し「魔法」を実行します。

私が 100% はっきりしていないのは、指定された量 (たとえば 10MB) を超えるファイルを含むリクエストを制限する方法です。誰かが数GBのサイズのファイルをアップロードした場合、サーバーのディスク容量を食い尽くす前にリクエストをブロックしたいのは明らかですよね?

wsgi アプリケーションでファイルのアップロードを制限する最良の方法は何ですか?

0 投票する
3 に答える
14645 参照

python - MultiDict をネストされた辞書に変換する方法

POST を Webob MultiDictからネストされた辞書に変換したいと考えています。例えば

したがって、次の POST から:

multidict に;

ネストされた辞書へ

何か案は?

編集

Willが投稿したformencodeパッケージvariable_decodeからメソッドを抽出することになりました。必要な唯一の変更は、リストを明示的にすることです。

これは多くの理由で優れています。

0 投票する
0 に答える
658 参照

wsgi - webob を使用してデータのチャンクを送信する

webob を使用して簡単なサーバー クライアント プログラムを作成しようとしました。1. クライアントは「Transfer-Encoding」、「chunked」を使用してデータを送信します。 2. 受信したデータはサーバー側で出力されます。

Server.py はデータを正しく受け取りました。ただし、webob から一連のエラー メッセージが表示されました。

ただし、何が起こったのか、または webob を使用してこのような単純なプログラム (チャンクを送信する) を作成するための簡単なガイドラインを教えてください。ありがとう!

コードとエラーは次のとおりです。

サーバー.py

client.py

エラー

0 投票する
1 に答える
673 参照

python - webob.Response でバイナリデータを返す

webob.Response でバイナリを返そうとしていますが、エラーが発生します

トレースバックを与える

0 投票する
2 に答える
954 参照

python - リモートユーザーのホスト名+AppEngine Python

に似ている:

remote_addr-リモートユーザーのIPアドレス。

代わりに、リモートユーザーのホスト名を取得する方法はありますか?似たようなものが、

公式ドキュメントのように、リクエストクラスには、リモートユーザーのホスト名を取得するオプションがないようです。

一部のユーザーがインターネットゲートウェイを共有している可能性があるため、ホスト名+ IPの組み合わせでマシンを一意に識別しようとしています。したがって、同じIPアドレスを持つ可能性があり、IPアドレスが十分に一意ではなくなります。

これについて何かアドバイスはありますか?または、少なくとも、匿名のIDを持つマシンを一意に識別する別の方法を誰かが提案できますか?

0 投票する
3 に答える
1449 参照

python - テスト目的で cgi.FieldStorage を作成するには?

webob ベースのアプリケーションでファイルのアップロードを処理するユーティリティを作成しています。そのための単体テストをいくつか書きたいと思います。

私の質問は - webob がアップロードされたファイルに使用するので、簡単な方法で (リクエスト全体をエミュレートすることなく) インスタンスcgi.FieldStorageを作成したいと思います。FieldStorage私がそれを行うために必要な最小限のコードは何ですか(「Lorem ipsum」コンテンツを含むテキストファイルのアップロードをエミュレートすることは問題ありません)。それとも、それを嘲笑する方が良い考えですか?