問題タブ [falconframework]

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 に答える
2313 参照

python - POST された multipart/form-data ファイルの処理

サーバー側で POST された生データを処理する最良の方法は何だろうと思っています。だから私はFalconframeworkを使用していて、ユーザーが提出したファイルを受け取ることができます

python とうまくいけば他のライブラリを使用して、ファイル自体だけでなく、 filename 、 uuid などのメタデータを抽出できるある種のファイル オブジェクトに変換したいと考えています。どのライブラリを使用すればよいですか?

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

python - Gunicorn で実行されていない Falconframework アプリ

私はこの些細なファルコンアプリを持っています:

この方法でgunicornを使用して実行しようとしています:

しかし、これを接続しようとすると、次のようになりhttpieます。

これはとても些細なことですが、ここで何が問題なのかわかりませんか?

0 投票する
4 に答える
8751 参照

python - Python falcon と非同期操作

私はpython3 + falconの組み合わせを使ってAPIを書いています。

メソッドにはクライアントに返信できる場所がたくさんありますが、DB や I/O 操作などを行う重いコードがあるため、重い部分が終了するまで待たなければなりません。

例えば:

コードの最初の行で「Hello」を送信できました。私が望むのは、重いコードをバックグラウンドで実行し、重い部分がいつ終了するかに関係なく応答を送信することです。

Falconには組み込みの非同期機能はありませんが、geventなどで使用できると述べています。これら2つを組み合わせる方法に関するドキュメントは見つかりませんでした。

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

python - Pythonコードを共有コードでモジュールに分割するには?

Falcon フレームワークを使用しています。すべてのスタンドアロン クラスが独自のディレクトリに格納されるようにします (/module1/ を提供するクラスは、ディレクトリ /module1/ 内にありました)。

app.py では、アプリケーションの初期化を行っています:

私の問題:

  1. module2 から module1 にアクセスできるモジュールのインポートをどのように編成する必要がありますか?
  2. /module2 から app.py の app 変数にアクセスする方法:

このコードを実行する必要があります:

PS: 私の英語でごめんなさい

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

python - gunicorn+gevent+pypy での Supervisord と monit の問題

Falcon Frameworkを使用してPythonで構築された小さなrest APIがあり、gunicorn + geventおよびpypy 2.3の仮想環境で実行されます(gevent@pypy-hacksおよびgevent-on-pypy/pypycoreからpipパッケージを正常にインストールしました)。アプリケーションに「スーパーバイザー」を追加したかったので、最初に Supervisord をインストールし、手順に従って起動して実行しました。

サーバーで最初にしたことは、API を開始するコマンドをテストすることでした。正常に実行され、問題なく API を使用できました。コマンドは次のとおりです。

注:settings.pyでdaemon=False、スーパーバイザーがコマンドを「フォアグラウンド」で実行し、デーモン化しないことを要求していることがわかったので、パラメーターを設定しました。

それが機能したら、先に進み/etc/supervisor/conf.d/my_api.conf、「コマンド」パラメーターを上記のコマンドとして設定してアプリの conf ファイルを作成し、正常に実行しました。Supervisord を使用して API を起動しようとすると失敗し、API のログには次のエラーが記録されていました。

そのため、コマンドを手動で実行するとうまくいくことに驚きましたが、スーパーバイザーが実行しようとすると、上記のエラーがスローされました。

多くの試行錯誤の後、monit をインストールして API を監視できるかどうかを確認することにし、前述のコマンドとして「start program」パラメーターを指定して正常にセットアップしました。

monit がまったく同じエラーをスローしたことに驚きました。つまり、これは、私の API (pypy + gunicorn + gevent) の性質上、周囲の監視ソフトウェアによって監視されないということですか?

Supervisord/monit を設定するときに間違っていることはありますか?

どんな助けでも大歓迎です。

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

python - TypeError: タイプ '_csv.writer' のオブジェクトに len() がありません

csvファイルを書き込んで応答本文で返そうとしていますが、取得しています

以下は私のコードです:

エラーがわかりません。