【发布时间】:2011-12-17 22:42:03
【问题描述】:
有没有人使用 Python 连接到 Microsoft Dynamics CRM 2011 中的 2011 端点?我已经安装了 SUDS 并且可以获取 WSDL,但是服务调用返回 400 Bad Request。我确定这是因为我没有通过身份验证,但我不太确定如何使用原始 SOAP 进行身份验证。我知道Girish's code sample,但对 SOAP 还不够熟悉,无法走得更远。
我看到有人问过a year ago on SO,但这个问题似乎是关于 NTLM 的。就我而言,我想使用 WS-Trust。
这是我得到的代码:
from suds.client import Client
import logging
logging.basicConfig(level=logging.INFO)
url = 'https://dev.crm.dynamics.com/XRMServices/2011/Discovery.svc?wsdl'
client = Client(url)
req = client.factory.create('ns3:RetrieveOrganizationsRequest')
accessTypes = client.factory.create('ns3:AccessType')
orgRel = client.factory.create('ns3:OrganizationRelease')
req.AccessType = accessTypes.Default
req.Release = orgRel.Current
headers = dict()
headers['Content-Type'] = 'application/soap+xml'
client.set_options(headers=headers)
resp = client.service.Execute(req)
【问题讨论】:
-
在这方面有过成功吗?
-
不,不幸的是,它从来没有成功过并且对这个项目失去了兴趣。
标签: python dynamics-crm dynamics-crm-2011