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

HttpResponse クラス

Http クラスによって返された HTTP 応答を処理するには、HttpResponse クラスを使用します。

名前空間

System

使用方法

HttpResponse でアクセスされたレスポンスボディ内の XML または JSON コンテンツを解析するには、XML クラスまたは JSON クラスを使用します。

次の getXmlStreamReader の例では、内容は外部 Web サーバから取得され、XML は XmlStreamReader を使用して解析されます。

1public class ReaderFromCalloutSample {
2
3  public void getAndParse() {
4
5    // Get the XML document from the external server
6    Http http = new Http();
7    HttpRequest req = new HttpRequest();
8    req.setEndpoint('https://docsample.herokuapp.com/xmlSample');
9    req.setMethod('GET');
10    HttpResponse res = http.send(req);
11
12    // Log the XML content
13    System.debug(res.getBody());
14
15    // Generate the HTTP response as an XML stream
16    XmlStreamReader reader = res.getXmlStreamReader();
17
18    // Read through the XML
19    while(reader.hasNext()) {
20      System.debug('Event Type:' + reader.getEventType());
21      if (reader.getEventType() == XmlTag.START_ELEMENT) {
22        System.debug(reader.getLocalName());
23      }
24      reader.next();
25    }
26 
27  }
28}

HttpResponse メソッド

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

getBody()

応答で返された本文を取得します。

署名

public String getBody()

戻り値

型: String

使用方法

制限: 同期 Apex の場合は 6 MB、非同期 Apex の場合は 12 MB。HTTP 要求のサイズおよび応答のサイズは、ヒープサイズの合計にカウントされます。

getBodyAsBlob()

応答で返された本文を Blob として取得します。

署名

public Blob getBodyAsBlob()

戻り値

型: Blob

使用方法

制限: 同期 Apex の場合は 6 MB、非同期 Apex の場合は 12 MB。HTTP 要求のサイズおよび応答のサイズは、ヒープサイズの合計にカウントされます。

getBodyDocument()

応答で返された本文を DOM ドキュメントとして取得します。

署名

public Dom.Document getBodyDocument()

戻り値

型: Dom.Document

次のショートカットとして使用できます。

1String xml = httpResponse.getBody();
2Dom.Document domDoc = new Dom.Document(xml);

getHeader(key)

応答ヘッダーの内容を取得します。

署名

public String getHeader(String key)

パラメータ

key
型: String

戻り値

型: String

getHeaderKeys()

応答内に返されたヘッダーキーの配列を取得します。

署名

public String[] getHeaderKeys()

戻り値

型: String[]

getStatus()

応答に返された状況メッセージを取得します。

署名

public String getStatus()

戻り値

型: String

getStatusCode()

応答内に返された状況コードの値を取得します。

署名

public Integer getStatusCode()

戻り値

型: Integer

getXmlStreamReader()

コールアウトレスポンスボディを解析する XmlStreamReader を返します。

署名

public XmlStreamReader getXmlStreamReader()

戻り値

型: System.XmlStreamReader

使用方法

次のショートカットとして使用できます。

1String xml = httpResponse.getBody();
2XmlStreamReader xsr = new XmlStreamReader(xml);

setBody(body)

応答で返された本文を指定します。

署名

public Void setBody(String body)

パラメータ

body
型: String

戻り値

型: Void

setBodyAsBlob(body)

Blob を使用して、応答で返された本文を指定します。

署名

public Void setBodyAsBlob(Blob body)

パラメータ

body
型: Blob

戻り値

型: Void

setHeader(key, value)

応答ヘッダーの内容を指定します。

署名

public Void setHeader(String key, String value)

パラメータ

key
型: String
value
型: String

戻り値

型: Void

setStatus(status)

応答で返された状況メッセージを指定します。

署名

public Void setStatus(String status)

パ���メータ

status
型: String

戻り値

型: Void

setStatusCode(statusCode)

応答で返された状況コードの値を指定します。

署名

public Void setStatusCode(Integer statusCode)

パラメータ

statusCode
型: Integer

戻り値

型: Void

toString()

次のような応答内に返された状況メッセージと状況コードを返します。

署名

public String toString()

戻り値

型: String

1Status=OK, StatusCode=200