3

私は appengine でアプリを実行していますが、そこで問題なく動作します。Facebook キャンバス URL http://xx.appspot.com/yyy/ (末尾のスラッシュ付き) にアプリの URL があり、アプリがhttp から呼び出された場合: //apps.facebook.com/appname私が得る

405 Method Not Allowed メソッド POST は、このリソースには許可されていません。

class MainHandler(webapp2.RequestHandler): def get(self): #ここで処理を行う def post(self): pass

app = webapp2.WSGIApplication([ ('/yyy/', MainHandler), ('/',anotherHandler),

]、デバッグ = True )

注: appengine ログにそのようなエラーはありません。

4

2 に答える 2

7

アプリにPOSTを作成しようとしていますが、それを受信するようにハンドラーが構成されていません。

GETハンドラーがある場所:

 def get(self):
     dostuff

POSTまた、ハンダーも必要です。

def post(self):
    dostuff

これを最後に見たときに覚えていることから、おそらく承認プロセスのステップを完了しようとしているのか、データを送信しようとしているのでしょう。

于 2012-11-12T15:31:51.523 に答える
3

良い一日 !

私の問題が何であるかを最終的に理解したようです。Paul C (正しい) が言及したように、アプリケーションで post メソッドを定義しましたが、それでも同じ 405 エラー メッセージが表示されました。その理由は、appengine ダッシュボードから実行されていたアプリのデフォルト バージョンを更新せず、アプリ バージョンを更新したためです。

同じ問題がある場合は、使用しているアプリのバージョンを確認してください。 https://appengine.google.com/deployment?app_id=s~APP_ID&version_id=default :

私と同じ経験をする人がいないことを願っています。皆さんありがとう。

于 2012-11-19T16:21:36.007 に答える