def method_rewrite_middleware(app, input_name='__METHOD_OVERRIDE__'):
allowed_methods = frozenset(('GET', 'POST', 'PUT', 'DELETE'))
def _middleware(environ, start_response):
query_string = environ.get('QUERY_STRING', '')
if input_name in query_string:
args = url_decode(query_string)
method = args.get(input_name)
if method in allowed_methods:
environ['REQUEST_METHOD'] = method
return app(environ, start_response)
return _middleware
评论列表
文章目录