Apex 的 API 简介

作者: 程程哥 | 来源:发表于2019-08-18 07:18 被阅读0次

    Salesforce 数据API分类

    Salesforce中提供了四种数据API接口。数据API接口为开发者提供了操作Salesforce数据的能力。它们分别是:

    • REST API:依据RESTful方法对数据进行新建、读取、更新、删除(CRUD)处理。REST API支持JSON和XML格式。REST API是轻量级的API,适用于处理网络应用或移动应用中。
    • SOAP API:基于SOAP协议,使用WSDL格式的文件处理数据。只支持XML格式。适用于服务器之间的通信。
    • Bulk API:是一种特殊定制的REST API,针对大批量数据(50000条记录或更多)的处理有更好的效果。
    • Streaming API:适用于当数据发生变化时发送提示消息。

    启用API权限

    要使用API,需要在用户的简档中,将“已启用 API”(API Enabled)复选框勾选。

    API限制

    Salesforce中有两种API限制。“并发限制”限制了同时运行的持续时间高于20秒的API请求的数量,“数量限制”限制了24小时之内运行的API请求的总数。

    要查看可运行的API的剩余数量,可以在设置界面中搜索“系统概览”,打开“系统概览”页面。在“API 使用情况”部分可以查看最近24小时之内运行的API数量,和最多允许的数量。

    系统概览界面

    要设定API的使用通知,可以在设置界面中搜索“API 使用通知”,打开“所有API 使用通知”界面。点击“新建”按钮即可新建API使用通知,当API使用数量达到一定的阈值时,会自动发送邮件通知相关的用户。

    编辑API使用通知界面

    生成API WSDL文件

    在设置界面下,搜索“API”,点击“开发”菜单项下面的“API”链接,进入“API WSDL”页面。

    API WSDL界面

    在此页面中,可以生成和下载各种WSDL和客户端证书,供API开发者使用。

    比如:

    • 点击“生成企业 WSDL”链接,在显示的窗口中点击“Generate”按钮,即可得到一个WSDL文件
    • 在SoapUI中使用此文件新建项目,即可建立与相应Salesforce系统的API通信
    • 开发者可以使用“login”操作来进行登录请求。注意,在Salesforce登录时,密码的部分需要输入密码和安全口令(Security Token)。比如密码是“123”,安全口令是“abc”,那么在“<password>”标签中需要输入“123abc”。示例如下:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:enterprise.soap.sforce.com">
       <soapenv:Header>
          <urn:LoginScopeHeader>
             <urn:organizationId></urn:organizationId>
             <!--Optional:-->
             <urn:portalId></urn:portalId>
          </urn:LoginScopeHeader>
       </soapenv:Header>
       <soapenv:Body>
          <urn:login>
             <urn:username>用户名</urn:username>
             <urn:password>密码和安全口令</urn:password>
          </urn:login>
       </soapenv:Body>
    </soapenv:Envelope>
    
    • 在登录成功后,系统会生成会话ID(在“<sessionId>”标签中)和服务器URL(在“<serverUrl>”标签中)。开发者需要记录下它们,以便于在以后的其他请求中使用
    • 开发者可以使用比如“create”等操作来对各种对象进行操作请求。在相应的标签中输入相应的值,并且在对应的标签中输入之前的会话ID或服务器URL,即可发送请求,完成操作

    企业WSDL和合作伙伴WSDL的区别

    Salesforce中最经常使用的是两种WSDL:

    • 企业WSDL(Enterprise WSDL)
    • 合作伙伴WSDL(Partner WSDL)

    它们有以下特点:

    1. 企业WSDL是强类型的,它和特定的某个Salesforce组织紧密联系在一起。当此Salesforce组织被修改之后,比如自定义字段、对象被修改,生成的企业WSDL也会不同
    2. 合作伙伴WSDL是弱类型的,不和特定的Salesforce组织联系在一起,所以当Salesforce组织被修改之后,不会生成不同的合作伙伴WSDL

    如果开发者需要通过API对某个特定的Salesforce组织进行CRUD操作,则使用企业WSDL。如果对多个Salesforce组织进行操作,则使用合作伙伴WSDL。

    相关文章

      网友评论

        本文标题:Apex 的 API 简介

        本文链接:https://www.haomeiwen.com/subject/uakbcftx.html