如何在Azure Python SDK中为NetworkManagementClient设置会话代理?
我希望能够将代理服务器与Azure Python SDK一起使用如何在Azure Python SDK中为NetworkManagementClient设置会话代理?,python,azure,proxy,Python,Azure,Proxy,我希望能够将代理服务器与Azure Python SDK一起使用NetworkManagementClient(NMC)。我看到NMC有一个\u client类型为msrest.service\u client的属性,其中包括一个config类型为NetworkManagementClientConfiguration的属性,该属性继承自AzureConfiguration,它本身具有类型为msrest.pipeline.ClientProxies的代理属性 鉴于上述情况,配置代理似乎是可行的,
NetworkManagementClient(NMC)
。我看到NMC
有一个\u client
类型为msrest.service\u client
的属性,其中包括一个config
类型为NetworkManagementClientConfiguration
的属性,该属性继承自AzureConfiguration
,它本身具有类型为msrest.pipeline.ClientProxies
的代理属性
鉴于上述情况,配置代理似乎是可行的,但我不了解设置代理的正确方法。首先,msrest正在使用请求,因此我假设您阅读了。还要注意,
请求.Session
对象有一个trust\u env
属性,默认情况下该属性为True
,用于读取一些env变量,如HTTP\u PROXY
客户端的配置有一个proxies
属性,正如您提到的ClientProxies
类。此类本身有一个proxies
dict属性和一个要添加到此dict中的add
方法。此类还有一个use\u env\u settings
布尔属性
假设您有NetworkManagementClient
的client
变量实例,那么您可以:
- 只需使用HTTP\u代理/HTTPS\u代理即可。请注意,可以使用禁用环境变量
这只是请求的client.config.proxies.use\u env\u settings=False
的别名trust\u env
- 定义您自己的代理:
这个调用实际上相当于 会话.get(url,代理={'http':'http://example.org:8080“})client.config.proxies.add('http','http://example.org:8080)