有哪些錯誤的原因NetworkError: 405 Method Not Allowed
谷歌應用程序引擎:405方法不被允許
我正在使用網絡服務和所有突然它開始返回該錯誤。它沒有維護,所以它不會得到修復。我很好奇,如果我能對此做點什麼。
違規的網絡服務的網址是:http://jsonpdb.appspot.com/add
有哪些錯誤的原因NetworkError: 405 Method Not Allowed
谷歌應用程序引擎:405方法不被允許
我正在使用網絡服務和所有突然它開始返回該錯誤。它沒有維護,所以它不會得到修復。我很好奇,如果我能對此做點什麼。
違規的網絡服務的網址是:http://jsonpdb.appspot.com/add
的方法(GET/POST/HEAD等),你要對URL中使用不被應用的支持。你確定API期望你使用你在那個URL上使用的方法嗎?
最常見的原因是使用錯誤的'get'和'post'作爲響應。驗證正在發送的內容以及正確的方法出現在您的處理程序中。
class MainHander(webapp.RequestHandler):
def get(self):
...
def post(self):
....
def delete(self):
....
另一個常見的問題是有主調度部解析的網址,但隨後在get不能提供他們/後/刪除
def main():
application = webapp.WSGIApplication(
[ (r'/upload/([^/]+)?/?', UploadFileHandler),
正則表達式存在()
在這...這是一個url路徑中的參數如下:/upload/filename
class UploadFileHandler(webapp.RequestHandler):
def post(self, filename):
...
向代碼提供鏈接將會有所幫助。
我知道這是一條古老的線索,但對於我自己的需求,我沒有找到令人滿意的答案。特別是如果你正在處理Ajax響應,你可能希望通過您的自定義webapp2的處理程序的調度爲他們檢查,以明確允許OPTIONS請求:
class MyHandler(webapp2.RequestHandler):
def __init__(self, request, response):
self.initialize(request, response)
#The dispatch is overwritten so we can respond to OPTIONS
def dispatch(self):
self.response.headers.add_header("Access-Control-Allow-Origin", "*")
if self.request.method.upper() == 'OPTIONS':
self.response.status = 204
self.response.write('')
else:
super(MyHandler, self).dispatch();
是,其在API。你現在可以看到他們的add的例子已經被破壞了:http://jsonpdb.appspot.com – mkoryak