[FIX] http.dispatch: call handle_exception() even w/ session missing/expired
This gives JSONRequests a chance to return a proper JSON-RPC result when an HTTPException is raised downstream, instead of returning a plain HTML 404 error.
This commit is contained in:
+4
-1
@@ -1118,7 +1118,10 @@ class Root(object):
|
|||||||
request = self.get_request(httprequest)
|
request = self.get_request(httprequest)
|
||||||
|
|
||||||
def _dispatch_nodb():
|
def _dispatch_nodb():
|
||||||
func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
|
try:
|
||||||
|
func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
|
||||||
|
except werkzeug.exceptions.HTTPException, e:
|
||||||
|
return request._handle_exception(e)
|
||||||
request.set_handler(func, arguments, "none")
|
request.set_handler(func, arguments, "none")
|
||||||
result = request.dispatch()
|
result = request.dispatch()
|
||||||
return result
|
return result
|
||||||
|
|||||||
Reference in New Issue
Block a user