docs: add httplib2 authorization to thread_safety (#1005)
Closes #808
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [x] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/google-api-python-client/issues/new/choose) before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
Fixes #808 🦕
diff --git a/docs/thread_safety.md b/docs/thread_safety.md
index 50bfad0..69f369e 100644
--- a/docs/thread_safety.md
+++ b/docs/thread_safety.md
@@ -9,14 +9,20 @@
The easiest way to provide threads with their own `httplib2.Http()` instances is to either override the construction of it within the service object or to pass an instance via the http argument to method calls.
```python
+import google.auth
+import googleapiclient
+import google_auth_httplib2
+import httplib2
+from googleapiclient import discovery
+
# Create a new Http() object for every request
def build_request(http, *args, **kwargs):
- new_http = httplib2.Http()
- return apiclient.http.HttpRequest(new_http, *args, **kwargs)
-service = build('api_name', 'api_version', requestBuilder=build_request)
+ new_htpp = google_auth_httplib2.AuthorizedHttp(credentials, http=httplib2.Http())
+ return googleapiclient.http.HttpRequest(new_http, *args, **kwargs)
+service = discovery.build('api_name', 'api_version', requestBuilder=build_request)
# Pass in a new Http() manually for every request
-service = build('api_name', 'api_version')
-http = httplib2.Http()
+service = discovery.build('api_name', 'api_version')
+http = google_auth_httplib2.AuthorizedHttp(credentials, http=httplib2.Http())
service.stamps().list().execute(http=http)
-```
\ No newline at end of file
+```