SPHttpClient class
SPHttpClient は、SharePoint に対して REST 呼び出しを実行するために使用されます。 これは、既定のヘッダーを追加し、書き込みに必要なダイジェストを管理して、テレメトリを収集します。このテレメトリはサービスがアプリケーションのパフォーマンスを監視するために役立ちます。
注釈
このクラスは、 @sealed
としてマークされます。 サブクラスでは拡張しないでください。
他のインターネット サービスと通信する場合は、 HttpClient クラスを使用します。
コンストラクター
(constructor)(service |
|
プロパティ
configurations | SPHttpClient クラスで使用する標準の定義済み SPHttpClientConfiguration オブジェクト。 |
is |
|
service |
SPHttpClient のサービス キー。 |
メソッド
_fetch(url, configuration, options) | |
begin |
ODATA バッチを開始します。これにより、複数の REST クエリを単一の Web 要求にバンドルできます。 |
fetch(url, configuration, options) | REST サービス呼び出しを実行します。 |
get(url, configuration, options) | fetch() を呼び出しますが、メソッドを "GET" に設定します。 |
get |
ヒューリスティックを使用して、認証のベース URL を推論します。 |
post(url, configuration, options) | fetch() を呼び出しますが、メソッドを "POST" に設定します。 |
コンストラクターの詳細
(constructor)(serviceScope)
SPHttpClient
クラスの新しいインスタンスを構築します
constructor(serviceScope: ServiceScope);
パラメーター
- serviceScope
- ServiceScope
プロパティの詳細
configurations
SPHttpClient クラスで使用する標準の定義済み SPHttpClientConfiguration オブジェクト。
static readonly configurations: ISPHttpClientConfigurations;
プロパティ値
isNavigate
get isNavigate(): boolean;
set isNavigate(isNavigate: boolean);
プロパティ値
boolean
serviceKey
SPHttpClient のサービス キー。
static readonly serviceKey: ServiceKey<SPHttpClient>;
プロパティ値
メソッドの詳細
_fetch(url, configuration, options)
protected _fetch(url: string, configuration: SPHttpClientConfiguration, options: ISPHttpClientOptions): Promise<SPHttpClientResponse>;
パラメーター
- url
-
string
- configuration
- SPHttpClientConfiguration
- options
- ISPHttpClientOptions
戻り値
Promise<SPHttpClientResponse>
beginBatch(batchCreationOptions)
注意
この API は開発者向けにプレビューとして提供されており、寄せられたフィードバックにもとづいて変更される場合があります。 この API は運用環境で使用しないでください。
ODATA バッチを開始します。これにより、複数の REST クエリを単一の Web 要求にバンドルできます。
beginBatch(batchCreationOptions?: ISPHttpClientBatchCreationOptions): SPHttpClientBatch;
パラメーター
- batchCreationOptions
- ISPHttpClientBatchCreationOptions
戻り値
バッチ操作の管理に使用される SPHttpClientBatch オブジェクト。
fetch(url, configuration, options)
REST サービス呼び出しを実行します。
fetch(url: string, configuration: SPHttpClientConfiguration, options: ISPHttpClientOptions): Promise<SPHttpClientResponse>;
パラメーター
- url
-
string
フェッチする URL
- configuration
- SPHttpClientConfiguration
SPHttpClient の既定の動作を決定します。通常これは SPHttpClientConfigurations からの最新のバージョン番号である必要があります
- options
- ISPHttpClientOptions
要求に影響する追加オプション
戻り値
Promise<SPHttpClientResponse>
WHATWG fetch() に類似した挙動を持つ約束です。 この約束は、HTTP404 や HTTP500 などのエラー状態コードに対して、正常に (HttpClientResponse.ok を false にして) 解決します。 約束が拒否するのは、ネットワーク障害やその他のエラーでサーバーとの通信ができない場合のみです。
注釈
一般に、SPHttpClient.fetch() のパラメーターとセマンティクスは、基本的に、ここに記載されている WHATWG API 標準と同じです。 https://fetch.spec.whatwg.org/
SPHttpClient サブクラスは、SharePoint ODATA API を操作するときに便利ないくつかの動作を追加します (代わりに HttpClient を使用することで回避できます)。
明示的に指定されていない場合は、既定の "Accept" ヘッダーと "Content-Type" ヘッダーが追加されます。
書き込み操作の場合、"X-RequestDigest" ヘッダーが自動的に追加されます
要求ダイジェスト トークンは自動的にフェッチされ、キャッシュに格納され、事前読み込みをサポートします
書き込み操作の場合、SPHttpClient は "X-RequestDigest" ヘッダーを自動的に追加します。これは、"https://example.com/sites/sample/_api/contextinfo" などの別の要求を発行することによって取得する必要がある場合があります。 通常、適切な SPWeb URL は、fetch()に渡された元の URL で "_api" などの予約済み URL セグメントを探すことによって推測できます。そうでない場合は、ISPHttpClientOptions.webUrl を使用して明示的に指定します。
get(url, configuration, options)
fetch() を呼び出しますが、メソッドを "GET" に設定します。
get(url: string, configuration: SPHttpClientConfiguration, options?: ISPHttpClientOptions): Promise<SPHttpClientResponse>;
パラメーター
- url
-
string
フェッチする URL
- configuration
- SPHttpClientConfiguration
SPHttpClient の既定の動作を決定します。通常これは SPHttpClientConfigurations からの最新のバージョン番号である必要があります
- options
- ISPHttpClientOptions
要求に影響する追加オプション
戻り値
Promise<SPHttpClientResponse>
WHATWG fetch() に類似した挙動を持つ約束です。 この約束は、HTTP404 や HTTP500 などのエラー状態コードに対して、正常に (HttpClientResponse.ok を false にして) 解決します。 約束が拒否するのは、ネットワーク障害やその他のエラーでサーバーとの通信ができない場合のみです。
getWebUrlFromRequestUrl(requestUrl)
ヒューリスティックを使用して、認証のベース URL を推論します。
static getWebUrlFromRequestUrl(requestUrl: string): string;
パラメーター
- requestUrl
-
string
SharePoint REST サービスの URL
戻り値
string
推定された SPWeb URL
注釈
"_api"、"_layouts"、"_vit_bin" などの一般的な SharePoint パス コンポーネントを探して、指定された REST URL に関連付けられている SPWeb URL を推論しようとします。 これは、X-RequestDigest や ODATA のバッチ処理などの操作に必要です。要求を完了するには、別の REST エンドポイントへの POST が必要です。
たとえば、requestUrl が "/sites/site/web/_api/service" の場合、返される URL は "/sites/site/web" になります。 または、requestUrl が "http://example.com/_layouts/service"; の場合、返される URL は "http://example.com" になります。
URL を特定できない場合は、例外がスローされます。
post(url, configuration, options)
fetch() を呼び出しますが、メソッドを "POST" に設定します。
post(url: string, configuration: SPHttpClientConfiguration, options: ISPHttpClientOptions): Promise<SPHttpClientResponse>;
パラメーター
- url
-
string
フェッチする URL
- configuration
- SPHttpClientConfiguration
SPHttpClient の既定の動作を決定します。通常これは SPHttpClientConfigurations からの最新のバージョン番号である必要があります
- options
- ISPHttpClientOptions
要求に影響する追加オプション
戻り値
Promise<SPHttpClientResponse>
WHATWG fetch() に類似した挙動を持つ約束です。 この約束は、HTTP404 や HTTP500 などのエラー状態コードに対して、正常に (HttpClientResponse.ok を false にして) 解決します。 約束が拒否するのは、ネットワーク障害やその他のエラーでサーバーとの通信ができない場合のみです。