Google app engine Google AppEngine WebApp2上的修补程序方法处理程序

Google app engine Google AppEngine WebApp2上的修补程序方法处理程序,google-app-engine,webapp2,http-patch,Google App Engine,Webapp2,Http Patch,我试图在我的webapp2.RequestHandler中使用def patch():方法来支持部分资源更新,但随后发现允许的方法在webapp2.py中被冻结: allowed_methods = frozenset(('GET', 'POST', 'HEAD', 'OPTIONS', 'PUT', 'DELETE', 'TRACE')) 如何扩展webapp2.RequestHandler或修改WSGIApplication类,以便

我试图在我的
webapp2.RequestHandler
中使用
def patch():
方法来支持部分资源更新,但随后发现允许的方法在webapp2.py中被冻结:

allowed_methods = frozenset(('GET', 'POST', 'HEAD', 'OPTIONS', 'PUT',
                             'DELETE', 'TRACE'))

如何扩展
webapp2.RequestHandler
或修改
WSGIApplication
类,以便在Google AppEngine上部署补丁HTTP方法?

在创建
WSGIApplication
之前,只需执行此操作即可使用猴子补丁:

allowed_methods = webapp2.WSGIApplication.allowed_methods
new_allowed_methods = allowed_methods.union(('PATCH',))
webapp2.WSGIApplication.allowed_methods = new_allowed_methods

webapp2
问题追踪器上有一个当前的问题,但没有人发现它。

作为一种解决方法,您可以像谷歌为自己的API所做的那样,实现
X-HTTP-Method-Override