Most common cause is using the wrong 'get' vs 'post' for the response. Verify what's being sent and that the correct method appears in the your handler.
class MainHander(webapp.RequestHandler):
def get(self):
...
def post(self):
....
def delete(self):
....
Another common issue is having the main dispatch section parse urls, but then not supply them in the get/post/delete
def main():
application = webapp.WSGIApplication(
[ (r'/upload/([^/]+)?/?', UploadFileHandler),
The regex there has ()
in it... that's a parameter in the url path like: /upload/filename
class UploadFileHandler(webapp.RequestHandler):
def post(self, filename):
...
Supplying a link to code would be helpful.