簡體   English   中英

將 Salesforce 數據公開為 Rest API

[英]Exposing the Salesforce Data as an Rest API

我是 Salesforce 的新手,我想就如何將 Sales force 數據公開為 Rest API 以便外部系統可以使用它獲得一些專家建議。 我想如果我可以創建一個像下面這樣的 Apex 類

@RestResource(urlMapping='/GetAccounts/*')
global with sharing class GetAccounts {
    @HttpGet
    global static Account doGet() {
        RestRequest req = RestContext.request;
        RestResponse res = RestContext.response;
        String accountId = req.requestURI.substring(req.requestURI.lastIndexOf('/')+1);
        Account result = [SELECT Id, Name FROM Account WHERE Id = :accountId];
        return result;
    }
}

對於使用數據的外部用戶,我想我可以設置一個連接的應用程序並為他們提供用戶名、密碼、消費者密鑰、消費者秘密,他們應該在 Salesforce 中進行身份驗證以獲取 URI 和會話 ID。 使用 SessionID 和 URI 應該能夠調用上面公開的 API。 這是正確的方法嗎,如果我在這里遺漏了什么,請告訴我。

還需要將 Swagger 與 API 一起使用,是否可以在 Apex 類中使用 Swagger。 你能幫助我如何在我的 API 中利用 Swagger。

首先,您應該嘗試使用 Salesforce 標准 REST API。 您可以從此處查看完整文檔。 https://developer.salesforce.com/docs/api-explorer/sobject/Account

您可能會問自己,什么時候我應該像您提供的代碼那樣將 APEX 類公開為 REST API? 當您需要執行自定義邏輯並將其與 API 調用結合時,您需要這樣做。

尚不支持將 Salesforce REST API 作為 OPEN API 規范(Swagger)公開。 如果您需要,您可以為這個想法投票。 https://success.salesforce.com/ideaView?id=0873A000000cQsxQAE

但支持另一種方式。 您可以導入 swagger 規范文件並使用來自 Salesforce 的點擊來調用它。 查看此博客了解更多詳情: https : //andyinthecloud.com/2017/07/23/simplified-api-integrations-with-external-services/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM