我正在尝试使用salesforce-python-toolkit对Salesforce API进行Web服务调用,但是我无法让客户端通过代理.由于工具包是基于suds的,我尝试使用suds本身来看看我是否可以让它尊重那里的代理设置,但它也没有用.
这在OS X 10.7(python 2.7)和ubuntu 12.04上的泡沫0.3.9上进行了测试.
我做的一个示例请求最终没有通过代理(只是在本地运行的burp或charles代理):
import suds
ws = suds.client.Client('file://sandbox.xml',proxy={'http':'http://localhost:8888'})
ws.service.login('user','pass')
Run Code Online (Sandbox Code Playgroud)
我用代理尝试了各种各样的东西 - 使用FQDN丢弃http://,使用IP.我已经逐步完成了pdb中的代码并看到它设置了代理选项.我还尝试在没有代理的情况下实例化客户端,然后使用以下命令设置它:ws.set_options(proxy = {'http':'http:// localhost:8888'})
肥皂水不再使用代理吗?我没有看到它直接列在这里http://jortel.fedorapeople.org/suds/doc/suds.options.Options-class.html,但我确实在运输中看到它.我是否需要通过运输设置不同的方式?当我走进pdb时,看起来确实是在使用传输,但我不确定如何.
谢谢!