aboutsummaryrefslogtreecommitdiff
path: root/discord/client.py
diff options
context:
space:
mode:
authorRapptz <[email protected]>2015-11-27 17:03:36 -0500
committerRapptz <[email protected]>2015-11-27 17:03:36 -0500
commitb1b2c0d0997ac29b775f001f632e3327ce86509b (patch)
treea0ede5334b307c403f84db8f732f7cd1e6c59cb7 /discord/client.py
parentClient.edit_message no longer checks for private channel. (diff)
downloaddiscord.py-b1b2c0d0997ac29b775f001f632e3327ce86509b.tar.xz
discord.py-b1b2c0d0997ac29b775f001f632e3327ce86509b.zip
Add LoginFailure exception for a clearer failure in Client.login
The older HTTPException is not exactly the clearest thing for people who are new to programming or HTTP exceptions in general.
Diffstat (limited to 'discord/client.py')
-rw-r--r--discord/client.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/discord/client.py b/discord/client.py
index e182347d..203664dc 100644
--- a/discord/client.py
+++ b/discord/client.py
@@ -810,7 +810,7 @@ class Client(object):
After this function is called, :attr:`is_logged_in` returns True if no
errors occur. If an error occurs during the login process, then
- :exc:`HTTPException` is raised.
+ :exc:`LoginFailure` or :exc:`HTTPException` is raised.
This function raises :exc:`GatewayNotFound` if it was unavailable to connect
to a websocket gateway.
@@ -826,7 +826,10 @@ class Client(object):
r = requests.post(endpoints.LOGIN, json=payload)
log.debug(request_logging_format.format(response=r))
- utils._verify_successful_response(r)
+ if r.status_code == 400:
+ raise LoginFailure('Improper credentials have been passed.')
+ elif r.status_code != 200:
+ raise HTTPException(r)
log.info('logging in returned status code {}'.format(r.status_code))
self.email = email