You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fixed in 1.0.0. You can now specify additional options to the request object at the global or service level.
vargoogle=require('googleapis');varyoutube=google.youtube({version: 'v3',proxy: /* proxy here */});// .. use youtube object here
To see more information look at README#Options and more information on setting a proxy can be found here. (Our library just relays the settings to the mikeal/request object)
I have written an additional test here to test the scenario of setting a proxy with auth set to an oauth client. The test passed with no additional changes to the code, so you can be sure that it is working.
But as I checked my local http proxy debug log, google api nodejs client does not always go through this proxy. Sometime it does, sometime it trys to access directly (and it would not success in my scenario).
For more fine-tuned control over how your API calls are made, we provide you with the ability to specify additional options that can be applied directly to the 'gaxios' object used in this library to make network calls to the API.
Activity
ryanseys commentedon Jul 22, 2014
Fixed in 1.0.0. You can now specify additional options to the
requestobject at the global or service level.To see more information look at README#Options and more information on setting a proxy can be found here. (Our library just relays the settings to the
mikeal/requestobject)Juljan commentedon Jul 25, 2014
Seems it does not work for the auth API. I may be wrong but I think the proxy is not set in the calls to
this.transporter.requestinoauth2client.js.ryanseys commentedon Jul 25, 2014
Hi @Juljan, there's a test you can find here that will show you how to apply things like proxy to a request.
ryanseys commentedon Jul 25, 2014
I have written an additional test here to test the scenario of setting a proxy with
authset to an oauth client. The test passed with no additional changes to the code, so you can be sure that it is working.flo-sch commentedon Oct 1, 2014
What about HTTPS proxys ? Is there any plan to support it in the future ? Should it be reported to the "request" project issues ?
aguegu commentedon Oct 11, 2014
I have tried set a global proxy with
google.options({ proxy: 'http://127.0.0.1:7777' });
But as I checked my local http proxy debug log, google api nodejs client does not always go through this proxy. Sometime it does, sometime it trys to access directly (and it would not success in my scenario).
Can anyone help me test on it?
aguegu commentedon Oct 11, 2014
As checking request doc,
add this line before google.options({ proxy: 'http://127.0.0.1:7777' }); helps:
process.env.HTTPS_PROXY = 'http://127.0.0.1:7777';
https://github.com/mikeal/request#controlling-proxy-behaviour-using-environment-variables
vaughnmuirhead commentedon Sep 7, 2017
Yep, process.env.HTTPS_PROXY = 'http://:'; worked for me. Thanks @aguegu
mirismaili commentedon Sep 3, 2020
I tried
google.options({ proxy: 'http://SOMETHING_WRONG' }). It works regularly! So it shouldn't be the correct setting.I found the below option works as expected:
This crashes on invalid proxies and works on valid proxies, as expected.
Ref:
https://github.com/googleapis/google-api-nodejs-client#request-options says:
And gaxios introduces itself:
And node-fetch uses http-agent:
https://github.com/node-fetch/node-fetch#custom-agent