By default dispatcher catches all exceptions in registered methods: https://github.com/mbr/tinyrpc/blob/1.1.4/tinyrpc/dispatch/__init__.py#L266
except Exception as e: # an error occurred within the method, return it return request.error_respond(e)
and exception e
is wrapped as response using RPCRequest.error_respond()
:
TODO: How to provide more detailed exception do client - i.e. exception type and backtrace ? Possible solutions:
RPCDispatcher
with own dispatch()
method, where exception will carry also .data