No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
レッスン 1: REST リソースとしてのクラスの追加
2 つのメソッドを含むクラスを追加し、Apex REST を使用して公開しましょう。
- 開発者コンソールで、 をクリックします。
- クラス名として「MerchandiseManager」と入力し、[OK] をクリックします。
- 自動生成されたコードを削除し、次のコードを追加します。
1swfobject.registerObject("clippy.codeblock-0", "9");@RestResource(urlMapping='/Merchandise/*') 2global with sharing class MerchandiseManager { 3 4 @HttpGet 5 global static Merchandise__c getMerchandiseById() { 6 RestRequest req = RestContext.request; 7 String merchId = req.requestURI.substring( 8 req.requestURI.lastIndexOf('/')+1); 9 Merchandise__c result = 10 [SELECT Name,Description__c,Price__c,Total_Inventory__c 11 FROM Merchandise__c 12 WHERE Id = :merchId]; 13 return result; 14 } 15 16 @HttpPost 17 global static String createMerchandise(String name, 18 String description, Decimal price, Double inventory) { 19 Merchandise__c m = new Merchandise__c( 20 Name=name, 21 Description__c=description, 22 Price__c=price, 23 Total_Inventory__c=inventory); 24 insert m; 25 return m.Id; 26 } 27} - [Save (保存)] をクリックします。
もうひとこと...
- クラスはグローバルで、@RestResource(urlMapping='/Invoice_Statement__c/*') アノテーションを使用して定義されます。REST API として公開する Apex クラスは、グローバルであり、@RestResource アノテーションが付加されている必要があります。@RestResource アノテーションのパラメータである urlMapping は、リソースを一意に識別するために使用され、基本 URL https://instance.salesforce.com/services/apexrest/ に対する相対的 URL を指定します。基本 URL と urlMapping 値は、クライアントが REST 要求で送信する URI を形成します。この場合、urlMapping の値には、ワイルドカード文字のアスタリスクが含まれます。つまり、リソース URI の /Merchandise/ の後には任意の値を含めることができます。このチュートリアルのステップ 3 では、レコードを取得するために URI に ID 値を付加します。
- クラスには、Apex REST アノテーションで定義された 2 つのグローバル静的メソッドが含まれます。すべての Apex REST メソッドはグローバルに静的である必要があります。
- 最初のクラスメソッド getMerchandiseById は @HttpGet アノテーションを使用して定義されます。
- @HttpGet アノテーションは、クライアントから HTTP GET 要求が送信されるとコールされる REST API としてメソッドを公開します。
- このメソッドは、クライアントが要求 URI で送信した ID に対応する商品品目を返します。
- また、要求と要求 URI を Apex 静的 RestContext クラスを介して取得します。
- 続いて、URI を解析し、最後の「/ 」の後に渡された値を検出し、SOQL クエリを実行して、この ID の商品レコードを取得します。最後に、このレコードを返します。
- 2 つ目のクラスメソッド createMerchandise は、@HttpPost アノテーションを使用して定義されます。このアノテーションは、クライアントから HTTP POST 要求が送信されるとコールされる REST API としてメソッドを公開します。このメソッドは、クライアントが送信した指定データを使用して商品レコードを作成します。また、insert DML 操作をコールして、新しいレコードをデータベースに挿入し、新しい商品レコードの ID をクライアントに返します。