Salesforce:如何使用API​​获取Enterprise WSDL?

时间:2013-05-07 06:41:06

标签: api wsdl salesforce

我需要在Java应用程序中使用Salesforce API访问Enterprise WSDL。任何人都可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

Salesforce WSDL仅在Salesforce UI中可用,而不是通过API。您可以通过以下方式获取它们:

  

设置 | 开发 |的 API

如果您发现需要在运行时获取Enterprise WSDL,因为您的应用程序需要使用不同的对象和字段集,那么您应该使用Partner WSDL。它允许您在运行时获取所有对象和字段描述并进行动态API调用。提前做一些工作,但会产生更灵活,更有弹性的应用程序。当对象和字段在将来发生变化时,您的应用程序将继续工作而无需重新使用WSDL。

答案 1 :(得分:0)

通过Salesforce API(据我所知)无法使用WSDL。但是,如果您拥有正确的信息,则可通过REST调用使用它。首先,您需要一个会话令牌,通过OAuth握手或用户名/密码+安全令牌握手生成。您还需要从中生成WSDL的Apex类的名称。有了这两件事,你就可以进行GET了。请参阅以下伪代码以获取必需的GET结构。

GET https://<SANDBOX_INSTANCE_URL>/services/wsdl/class/<APEX_WSDL_CLASS_NAME>?isdtp=p1

Headers:
  'Cookie' : 'sid=<SESSION_TOKEN>'

编辑: 我验证了这适用于企业/合作伙伴WSDL和从自定义Apex类生成的WSDL。

从v41.0开始,您可以对这些WSDL使用以下通用URL: