405不允许的方法此资源appengine facebook App不允许使用POST方法

时间:2012-11-12 15:16:23

标签: facebook google-app-engine http-status-code-405

我正在做一个关于appengine的应用程序,它在那里工作得很好。我在facebook canvas url http://xx.appspot.com/yyy/上有应用程序的URL(带有斜杠),当从http://apps.facebook.com/appname调用应用程序时得到

  

405不允许的方法此方法不允许POST方法   资源。

     

类MainHandler(webapp2.RequestHandler):       def get(self):#do stuff here here       def post(self):传递

     

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

     

],debug = True)

注意:在appengine日志中没有这样的错误。

2 个答案:

答案 0 :(得分:7)

它正在尝试对您的应用进行POST,但您没有配置处理器来接收它。

你有GET处理程序的地方:

 def get(self):
     dostuff

你还需要一个POST犯罪者:

def post(self):
    dostuff

从我上次看到这个时的记忆开始,它可能试图完成授权过程中的一个步骤或向您发送一些数据。

答案 1 :(得分:3)

美好的一天!

好像我最终弄明白我的问题是什么。我在应用程序中定义了post方法,因为Paul C(这是正确的)已经提到但我仍然得到相同的405错误消息。原因是,我没有更新从appengine仪表板运行的应用程序的默认版本&更新了我的应用版本。

如果您遇到同样的问题,请确保您使用的是哪个版本的应用。 https://appengine.google.com/deployment?app_id=s~APP_ID&version_id=default

我希望没有人经历过同样的经历。 谢谢大家。