1

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

4

2 回答 2

1

Salesforce WSDL 仅在 Salesforce UI 中可用,不能通过 API 使用。您可以在以下位置获得它们:

设置| 开发| API

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

于 2013-05-07T07:18:46.870 回答
0

WSDL 不能通过 Salesforce API 获得(据我所知)。但是,如果您有正确的信息,它可以通过 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:

于 2017-10-27T12:32:30.213 回答