Skip to content

Commit 97d8535

Browse files
author
Kenneth Reitz
committed
basic auth -- that was easy :)
1 parent a3f9e54 commit 97d8535

File tree

2 files changed

+22
-5
lines changed

2 files changed

+22
-5
lines changed

github3/api.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,28 @@ def _generate_url(endpoint):
4848
return (settings.base_url + resource)
4949

5050

51+
def _requests_pre_hook(*args, **kwargs):
52+
return args, kwargs
53+
54+
5155
def _get_http_resource(self, endpoint, params=None):
5256

5357
url = self._generate_url(endpoint)
54-
r = requests.get(url, params=params)
58+
59+
args, kwargs = self._requests_pre_hook(url, params=params)
60+
r = requests.get(*args, **kwargs)
61+
5562
r.raise_for_status()
5663

5764
return r
5865

66+
def _patch_http_resource(self, endpoint, params=None):
67+
68+
url = self._generate_url(endpoint)
69+
r = requests.patch(url, params=params)
70+
r.raise_for_status()
71+
72+
return r
5973

6074

6175
def _get_resource(self, resource, obj, **kwargs):
@@ -94,15 +108,13 @@ def __init__(self):
94108

95109

96110
def get_user(self, username):
97-
# return 'kennethreitz'
98111
"""Get a single user."""
99112
return self._get_resource(('users', username), User)
100-
# return User()
101113

102114

103115
def get_me(self):
104116
"""Get the authenticated user."""
105-
return self._get_resource(('users'), User)
117+
return self._get_resource(('user'), User)
106118

107119

108120

github3/core.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,14 @@ def no_auth():
2222
return gh
2323

2424

25-
def basic_auth():
25+
def basic_auth(username, password):
2626
"""Returns an authenticated Github object, via HTTP Basic."""
2727

28+
def enable_auth(*args, **kwargs):
29+
kwargs['auth'] = (username, password)
30+
return args, kwargs
31+
2832
gh = Github()
33+
gh._requests_pre_hook = enable_auth
2934

3035
return gh

0 commit comments

Comments
 (0)