Skip to content

Handle connection refused exception #42

@depauwjimmy

Description

@depauwjimmy

I have updated to 1.0.6 and find myself not having any builtin exception being returned when the remote connection is impossible.
I tested how it react when shutting down my RESt server but it throws

Traceback (most recent call last):
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flask/app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flask/app.py", line 1951, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flask/app.py", line 1820, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flask/app.py", line 1949, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flask/app.py", line 1935, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/god_kane/Documents/python_projects/flagship-client/routes/login.py", line 26, in auth_customer
    if rest.authenticate(form.customer_login.data, form.customer_pass.data, allow_admin=False):
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/flagshipcore/flagship/libserver.py", line 126, in authenticate
    'login': login, 'pass': password, 'customer': allow_customer, 'admin': allow_admin})
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/simple_rest_client/resource.py", line 101, in action_method
    return make_request(self.client, request)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/simple_rest_client/decorators.py", line 28, in wrapper
    response = f(*args, **kwargs)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/simple_rest_client/request.py", line 25, in make_request
    client_response = client_method(request.url, **client_options)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpx/_client.py", line 835, in post
    timeout=timeout,
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpx/_client.py", line 601, in request
    request, auth=auth, allow_redirects=allow_redirects, timeout=timeout,
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpx/_client.py", line 621, in send
    request, auth=auth, timeout=timeout, allow_redirects=allow_redirects,
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpx/_client.py", line 648, in send_handling_redirects
    request, auth=auth, timeout=timeout, history=history
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpx/_client.py", line 684, in send_handling_auth
    response = self.send_single_request(request, timeout)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpx/_client.py", line 719, in send_single_request
    timeout=timeout.as_dict(),
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpcore/_sync/connection_pool.py", line 153, in request
    method, url, headers=headers, stream=stream, timeout=timeout
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpcore/_sync/connection.py", line 65, in request
    self.socket = self._open_socket(timeout)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpcore/_sync/connection.py", line 86, in _open_socket
    hostname, port, ssl_context, timeout
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpcore/_backends/sync.py", line 139, in open_tcp_stream
    return SyncSocketStream(sock=sock)
  File "/usr/lib/python3.6/contextlib.py", line 99, in __exit__
    self.gen.throw(type, value, traceback)
  File "/home/god_kane/Documents/virtualenv/flagship-client/lib/python3.6/site-packages/httpcore/_exceptions.py", line 12, in map_exceptions
    raise to_exc(exc) from None
httpcore._exceptions.ConnectError: [Errno 111] Connection refused

Why no simple_rest_client.exceptions is returned at all?
Python is 3.6
httpcore is 0.9.1
simple-rest is 1.0.6

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions