私はかなり単純なアプリケーションを持っています。私がすることの1つは、新しいウィジェットを作成するときです。タスクキューにタスクを追加してウィジェットのqrコードイメージを取得し、それをblobに保存します。タスクがバックエンドターゲットでキューに追加されたときのログインエラー
私のように定義されたキューがあります、私のコードで
handlers:
- url: /tasks/fetchimage
script: worker.py
login: admin
:app.yamlをの
backends:
- name: worker
options: dynamic
class: B1
スニペット:私のように定義されたバックエンドを持って
queue:
- name: workqueue
target: worker
rate: 5/s
を次のようなウィジェットが作成されます。
"queue_name =" workqueue "をコメントアウトすると、すべて正常に動作します(バックエンドには流れないデフォルトのキューを使用します)。コメントを削除すると、ログに次のエラーが表示されます。0.1.0.2 - - [04/Jan/2012:19:05:29 -0800] "GET/tasks/fetchimage?design_id = 9034 HTTP/1.1 "302 0
...URLにユーザーログインが必要なため、リクエストが失敗しました。 App Engine内で呼び出されるリクエスト(タスクキューなどのオフラインリクエストやXMPPや受信メールなどのウェブフック)では、URLに管理者ログイン(またはログインなし)が必要です。
何か不足していますか?私はapp.yaml設定をバックエンドに適用すると仮定します。この仮定は間違っていますか?
あなたの答えをありがとう。ハンドラに 'login:admin'を追加してバックエンドハンドラを非公開にしたと思いました。バックエンドはデフォルトではプライベートです。あなたは精緻化できますか? –
ああ、別のもの。テストするために 'login:admin'を削除しましたが、それは役に立ちませんでした。 –
私は、バックエンドがアプリケーションの残りの部分から別々に更新されなければならないことに気付きませんでした。私はあなたがバックエンドを一度(作成するために)「更新」したと思って、それ以降のすべてのappcfg更新は、表と裏の両方を更新します。一度私はバックを更新し、物事は働き始めた。ご協力いただきありがとうございます。 –