問題タブ [werkzeug]
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 - ブート時に Python スクリプトをデーモンとして実行する (Ubuntu)
werkzeug を使用して小さな Web サーバーを作成しましたが、通常の python の方法で実行できますpython my_server.py
。ページが読み込まれ、すべて正常に動作します。今、私は自分のPCが起動したときにそれを開始したいと考えています。それを行う最も簡単な方法は何ですか?私は成り上がりに苦労してきましたが、実行したstart my_server
後すぐに受け取るため、「バックグラウンドで生きている」ようには見えませんkernel: [ 8799.793942] init: my_server main process (7274) terminated with status 1
my_server.py:
upstart 構成ファイル my_server.conf:
それを機能させる方法はありますか?または、スクリプトをデーモン化する他のより良い方法はありますか?
更新:
問題は にあると思いますmy_server.py
。そもそもWebサーバー(メソッド)を開始していないようですrun_simple()
。upstart などのタスク ハンドラで .py ファイルを実行するには、どのような手順を実行する必要がありますか?
- シバンを最初の行として配置する
#!/usr/bin/env python
- 実行権限を許可する
chmod 755
- スーパーユーザー権限でデーモンを起動します (起動を妨げる権限制限がないことを確実にするため)。
- すべての Python ライブラリがそこにあることを確認してください!
- 他の何か?
解決済み:
この問題は、Python の依存関係の欠落にありました。upstart
タスク マネージャー (または など)を介してスクリプトを開始すると、start-stop-daemon
エラーはスローされません。pythonpath に必要なものがすべて含まれていることを絶対に確認する必要があります。
python - werkzeug /bottleでプライベート/パブリックapikeyを実装する方法は?
私はBottleを使用してRESTfulWebサービスを開発していますが、おそらく間もなくWerkzeugに移行します。秘密鍵と公開鍵のペアに基づいて機能する認証スキームを実装したいと思います。サーバーは公開部分のみを保存し、ユーザーは秘密部分を保持します。アクセス時に、サーバーは、サーバーが検証して公開鍵部分に関連付けることができる秘密鍵を使用してアクションを実行するようにアクセサーに要求します。成功すると、たとえば、しばらくの間使用できるトークンが生成されます。WerkzeugまたはBottleにこのようなものを実装するためのパスは何ですか?私が作業できるプロジェクト/例はありますか?
python - werkzeug リクエスト オブジェクトの値の変更
werkzeug からのリクエスト オブジェクトがあります。このリクエスト オブジェクトの値を変更したいと考えています。werkzeug リクエスト オブジェクトは不変であるため、これは不可能です。この設計上の決定は理解していますが、値を変更する必要があります。どうすればいいですか?
をやってみましたdeepcopy
が、結果のコピーも不変です。独自のモック オブジェクトを作成して手動で値を入力することもできると思いますが、それが私の最後の手段です。より良い方法はありますか?
python - GoogleAppEngineでFlaskデバッグモードを実行できません
Python2.7を搭載したGoogleAppEngineでFlask0.9/ Werkzeug 0.8.3を実行していますが、Werkzeugデバッガーを実行したいのですが。werkzeug_appengine_debuggerを使用しようとした後、コンソールで次の例外が発生しました。
これは、「ルート」だけでなく、Flaskアプリケーションが持つことができるあらゆる属性にすることができます。
私のファイルツリーは次のようになり、 flask-appengine-templateから借用しました:
app.yamlで、WSGIアプリをターゲットにしています。
そしてここに内容があります__init__.py
werkzeug_appengine_debuggerがないと機能しません。次の初期化
それでも同じ例外をスローします。
GAE + Flaskのチュートリアルや記事では、この問題は見られませんでした。なぜそれが起こるのでしょうか?
file-upload - mysql と python で文字の混乱を避ける
http://werkzeug.pocoo.org/からロゴ画像をアップロードしたい 保存後、以下を試してみました。私は初心者なので助けてください..
HTMLフォームを介してアップロードしたときに受信したストリームは
req.file["name"] を使用して上記を受け取り、Mysql に保存します。
今、MySQL から読み返すと、
すべてのエスケープ文字がなくなりました。このファイルを表示したいのですが、応答を送信した後に HTML で表示できません。
なぜこれが起こっているのですか?どうすれば修正できますか? 私はこれを1週間以上乗り越えることができません。
私はpython2.7.3とwerkzeugとpython用のmysql-connectorを使用しています。
github の 1 つのサンプル コードでは、これを使用しています。
これは完全に機能し、すべて通常のテキストです..どうすればこれを入手できますか. ?
python - werkzeug(flask) のリクエストを介して送信された Immutabledict でネストされた dict の値を取得する方法はありますか?
過去に質問しましたが、まだ問題に直面しています。address_dict = {'address': {'US': 'サンフランシスコ', 'US': 'ニューヨーク', 'UK': 'ロンドン'}}
上記のパラメータがリクエスト経由で送信された場合、Flask で request.form を使用してアドレス キーの値を取得するにはどうすればよいですか?
次に、flask.request のコンテキストでこれを取得しました。
アドレスの各キーの値を取得するにはどうすればよいですか?
ありがとう。
wsgi - gevent静的ファイルレンダリング
werkzeugとpureを使用して記述されたWSGIアプリケーションでcssのような静的ファイルを提供する方法
python..フレームワークは使用されていません。
これは私のサーバーです。
テンプレートは、cssや画像などの静的ファイルへのパスです。ただし、これはアプリケーションのみを提供し、静的ファイルは提供しません。geventで静的ファイルを提供する機能はありますか..?ドキュメントが役に立たなかった。
gevent - werkzeug サーバーがリクエストの処理に失敗しました
このgeventサーバーを実行しようとしています
werkzeug サーバーからのリクエストを処理できませんでした。私は werkzeug ユーティリティのみを使用しており、werkzeug サーバーは使用したことがありません。
python - フラスコ+Gevent-socketioを使用してwerkzeug/カスタムエラーページを機能させる方法
私はフラスコ+Gevent-socketiominiのウェブサイトを持っています。起動されます:
ただし、ビューでエラーが発生すると、次のように出力されます。
werkzeugデバッガーを表示する代わりに。また、私の習慣@app.errorhandler(500)
は呼ばれていません。
これはGevent-socketioを使用したときに発生し、通常のフラスコのWebサイトは正常に機能します。
何がエラーを処理し、デフォルトのフラスコの動作をキャンセルしているのだろうか...
python - Flask ルートの順序は重要ですか?
私はFlaskを使い始めたばかりなので、おそらくこれは非常に初歩的な質問です。このアプリは Google App Engine SDK 1.7.4 で実行されています。Flask 0.9、Werkzeug 0.9、Jinja2 2.6。
次のコードは期待どおりに機能します。
ただし、ルート ハンドラーを逆にすると、/hello/ に移動すると、/ に移動したかのようにレンダリングされます。
さらに悪いことに、/hello/、たとえば /hello/John に移動すると、エラー 500 が発生します。
これは正常な動作であり、ルートの順序は重要ですか? その場合は、関連するドキュメントを教えてください。また、可能であれば、この順序が重要である理由を説明してください。