この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

RestRequest クラス

HTTP 要求から Apex RESTful Web サービスメソッドにデータを渡す場合に使用されるオブジェクトを表します。

名前空間

System

使用方法

System.RestRequest クラスを使用して、REST アノテーションの 1 つを使用して定義される Apex RESTful Web サービスメソッドに���求データを渡します。

例: REST アノテーションが付加されたメソッドを含む Apex クラス

次の例では、Apex の Apex REST API の実装方法を示します。このクラスが公開する GET、DELETE、および POST の 3 つのメソッドはそれぞれ、異なる HTTP 要求を処理します。HTTP 要求を発行して、クライアントからアノテーションが付加されたこれらのメソッドをコールできます。

RestRequest コンストラクタ

RestRequest のコンストラクタは次のとおりです。

RestRequest()

System.RestRequest クラスの新しいインスタンスを作成します。

署名

public RestRequest()

RestRequest プロパティ

RestRequest のプロパティは次のとおりです。

RestRequest List プロパティと Map プロパティは参照専用ですが、内容は参照・更新が可能です。変更するには、Collection メソッドを直接コールするか、前の表に示した、関連付けられた RestRequest メソッドを使用できます。

メモ

headers

要求が受け取るヘッダーを返します。

署名

public Map<String, String> headers {get; set;}

プロパティ値

型: Map<String, String>

httpMethod

サポートされる HTTP 要求メソッドの 1 つを返します。

署名

public String httpMethod {get; set;}

プロパティ値

型: String

返される値は次のとおりです。

  • DELETE
  • GET
  • HEAD
  • PATCH
  • POST
  • PUT

params

要求が受け取るパラメータを返します。

署名

public Map <String, String> params {get; set;}

プロパティ値

型: Map<String, String>

remoteAddress

要求を行うクライアントの IP アドレスを返します。

署名

public String remoteAddress {get; set;}

プロパティ値

型: String

requestBody

リクエストボディを返すか、設定します。

署名

public Blob requestBody {get; set;}

プロパティ値

型: Blob

使用方法

Apex メソッドにパラメータがない場合、Apex REST は HTTP リクエストボディを RestRequest.requestBody プロパティにコピーします。パラメータがある場合、Apex REST はデータをそれらのパラメータに並列化しようとします。ただし、データは RestRequest.requestBody プロパティには並列化されません。

requestURI

HTTP 要求文字列内のホスト名の後の文字列をすべて返すか、設定します。

署名

public String requestURI {get; set;}

プロパティ値

型: String

たとえば、要求文字列が https://instance.salesforce.com/services/apexrest/Account/ の場合、requestURI/services/apexrest/Account/ です。

resourcePath

要求の REST リソースパスを返します。

署名

public String resourcePath {get; set;}

プロパティ値

型: String

たとえば、Apex REST クラスが /MyResource/*urlMapping を定義している場合、resourcePath プロパティは /services/apexrest/MyResource/* を返します。

RestRequest メソッド

RestRequest のメソッドは次のとおりです。すべてインスタンスメソッドです。

実行時に、ヘッダーまたはパラメータは、対応するプロパティに自動的に並列化されるため、通常 RestRequest オブジェクトに追加する必要はありません。次のメソッドは、Apex REST クラスをテストするユニットを対象とします。これらのメソッドを使用して、ヘッダーまたはパラメータ値を RestRequest オブジェクトに追加でき、REST メソッドコールを再作成する必要はありません。

メモ

addHeader(name, value)

要求ヘッダー対応付けにヘッダーを追加します。

署名

public Void addHeader(String name, String value)

パラメータ

name
型: String
value
型: String

戻り値

型: Void

使用方法

このメソッドは、Apex REST クラスのテストユニットを対象としています。

次のヘッダーは許可されていません。
  • Cookie
  • set-cookie
  • set-cookie2
  • content-length
  • 認証
いずれかが使用された場合は Apex 例外が返されます。

addParameter(name, value)

要求パラメータ対応付けにパラメータを追加します。

署名

public Void addParameter(String name, String value)

パラメータ

name
型: String
value
型: String

戻り値

型: Void

使用方法

このメソッドは、Apex REST クラスのテストユニットを対象としています。