我在一个Flask应用程序中有一个helper方法,它被几个端点用来获取一个资源。为了避免到处都有多个redirect_url
调用,我希望能够仅从这个helper方法重定向。抛出RequestRedirect
异常,如here所示,正确返回301
响应,但不会设置Content-Location
错误。为了解决这个问题,我添加了一个after_this_request
钩子,它设置响应的url。在
这似乎是正确的,但我想知道是否有一个更优雅的方式来进行。在
匿名助手方法:
def get_resource(resource_id):
try:
# Some logic
except:
@after_this_request
def add_header(response):
response.headers['Content-Location'] = url
return response
raise RequestRedirect(new_url='/')
如果它在api之外,通常会重定向到404页。下面是一个示例:
相关问题 更多 >
编程相关推荐