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): #do stuff here def post(self): pass

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

],调试=真)

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

4

2 回答 2

7

它正在尝试向您的应用程序发送 POST,但您没有配置处理程序来接收它。

你的GET处理程序在哪里:

 def get(self):
     dostuff

你还需要有一个POSThander:

def post(self):
    dostuff

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

于 2012-11-12T15:31:51.523 回答
3

再会 !

看来我终于弄清楚我的问题是什么了。我在应用程序中定义了 post 方法,正如 Paul C(这是正确的)所提到的,但我仍然收到相同的 405 错误消息。原因是,我没有更新从 appengine 仪表板运行的应用程序的默认版本并更新了我的应用程序版本。

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

我希望没有人会经历与我相同的经历。谢谢大家。

于 2012-11-19T16:21:36.007 回答