APIRequestContext
このAPIはWeb APIテストに使用されます。APIエンドポイントのトリガー、マイクロサービスの構成、e2eテストのための環境またはサービスの準備に使用できます。
各Playwrightブラウザコンテキストには、ブラウザコンテキストとクッキーストレージを共有し、APIRequestContextインスタンスが関連付けられており、BrowserContext.APIRequestまたはPage.APIRequestを介してアクセスできます。ApiRequest.NewContextAsync()を呼び出すことで、新しいAPIRequestContextインスタンスを手動で作成することも可能です。
クッキー管理
APIRequestContextはBrowserContext.APIRequestとPage.APIRequestによって返され、対応するBrowserContextとクッキーストレージを共有します。各APIリクエストには、ブラウザコンテキストからの値でCookie
ヘッダーが設定されます。API応答にSet-Cookie
ヘッダーが含まれている場合、自動的にBrowserContextのクッキーが更新され、ページからのリクエストはそれらを取得します。これは、このAPIを使用してログインした場合、e2eテストもログイン状態になり、その逆もまた然りであることを意味します。
APIリクエストがブラウザのクッキーと干渉しないようにしたい場合は、ApiRequest.NewContextAsync()を呼び出して新しいAPIRequestContextを作成する必要があります。このようなAPIRequestContext
オブジェクトは、独自の隔離されたクッキーストレージを持ちます。
メソッド
CreateFormData
追加バージョン: v1.23HTTPリクエストを作成する際に、フォームおよびマルチパートデータを提供するために使用される新しいFormDataインスタンスを作成します。
使用法
ApiRequestContext.CreateFormData
戻り値
DeleteAsync
追加バージョン: v1.16HTTP(S) DELETEリクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
await ApiRequestContext.DeleteAsync(url, options);
引数
-
ターゲットURL。
-
options
ApiRequestContextDeleteOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)追加バージョン: v1.17#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
Form
FormData? (オプション)追加バージョン: v1.17#このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
Multipart
FormData? (オプション)追加バージョン: v1.17#このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
DisposeAsync
追加バージョン: v1.16ApiRequestContext.GetAsync()および類似のメソッドによって返されるすべての応答はメモリに保存されるため、後でApiResponse.BodyAsync()を呼び出すことができます。このメソッドは、そのすべてのリソースを破棄し、破棄されたAPIRequestContextに対してメソッドを呼び出すと例外がスローされます。
使用法
await ApiRequestContext.DisposeAsync(options);
引数
options
ApiRequestContextDisposeOptions?
(オプション)
戻り値
FetchAsync
追加バージョン: v1.16HTTP(S)リクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
JSONオブジェクトはリクエストに直接渡すことができます。
var data = new Dictionary<string, object>() {
{ "title", "Book Title" },
{ "body", "John Doe" }
};
await Request.FetchAsync("https://example.com/api/createBook", new() { Method = "post", DataObject = data });
リクエストの本文でファイルを送信する一般的な方法は、multipart/form-data
エンコーディングを使用してフォームフィールドとしてアップロードすることです。これはmultipart
パラメータを指定することによって行います。
var file = new FilePayload()
{
Name = "f.js",
MimeType = "text/javascript",
Buffer = System.Text.Encoding.UTF8.GetBytes("console.log(2022);")
};
var multipart = Context.APIRequest.CreateFormData();
multipart.Set("fileField", file);
await Request.FetchAsync("https://example.com/api/uploadScript", new() { Method = "post", Multipart = multipart });
引数
-
urlOrRequest
string | Request#すべてのパラメータを取得するターゲットURLまたはリクエスト。
-
options
ApiRequestContextFetchOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
設定されている場合、フェッチメソッドを変更します(例:PUTまたはPOST)。指定しない場合、GETメソッドが使用されます。
-
このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
GetAsync
追加バージョン: v1.16HTTP(S) GETリクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
リクエストパラメータはparams
オプションで設定でき、URL検索パラメータにシリアル化されます。
var queryParams = new Dictionary<string, object>()
{
{ "isbn", "1234" },
{ "page", 23 },
};
await request.GetAsync("https://example.com/api/getText", new() { Params = queryParams });
引数
-
ターゲットURL。
-
options
ApiRequestContextGetOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)追加バージョン: v1.26#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
Form
FormData? (オプション)追加バージョン: v1.26#このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
Multipart
FormData? (オプション)追加バージョン: v1.26#このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
HeadAsync
追加バージョン: v1.16HTTP(S) HEADリクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
await ApiRequestContext.HeadAsync(url, options);
引数
-
ターゲットURL。
-
options
ApiRequestContextHeadOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)追加バージョン: v1.26#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
Form
FormData? (オプション)追加バージョン: v1.26#このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
Multipart
FormData? (オプション)追加バージョン: v1.26#このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
PatchAsync
追加バージョン: v1.16HTTP(S) PATCHリクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
await ApiRequestContext.PatchAsync(url, options);
引数
-
ターゲットURL。
-
options
ApiRequestContextPatchOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
PostAsync
追加バージョン: v1.16HTTP(S) POSTリクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
JSONオブジェクトはリクエストに直接渡すことができます。
var data = new Dictionary<string, object>() {
{ "firstName", "John" },
{ "lastName", "Doe" }
};
await request.PostAsync("https://example.com/api/createBook", new() { DataObject = data });
サーバーにフォームデータを送信するには、form
オプションを使用します。その値はapplication/x-www-form-urlencoded
エンコーディングでリクエストボディにエンコードされます(ファイルを送信するためのmultipart/form-data
フォームエンコーディングの使用方法は以下を参照)。
var formData = Context.APIRequest.CreateFormData();
formData.Set("title", "Book Title");
formData.Set("body", "John Doe");
await request.PostAsync("https://example.com/api/findBook", new() { Form = formData });
リクエストの本文でファイルを送信する一般的な方法は、multipart/form-data
エンコーディングを使用してフォームフィールドとしてアップロードすることです。FormDataを使用してリクエストボディを構築し、それをmultipart
パラメータとしてリクエストに渡します。
var file = new FilePayload()
{
Name = "f.js",
MimeType = "text/javascript",
Buffer = System.Text.Encoding.UTF8.GetBytes("console.log(2022);")
};
var multipart = Context.APIRequest.CreateFormData();
multipart.Set("fileField", file);
await request.PostAsync("https://example.com/api/uploadScript", new() { Multipart = multipart });
引数
-
ターゲットURL。
-
options
ApiRequestContextPostOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
PutAsync
追加バージョン: v1.16HTTP(S) PUTリクエストを送信し、その応答を返します。このメソッドは、コンテキストからリクエストクッキーを設定し、応答からコンテキストクッキーを更新します。このメソッドは自動的にリダイレクトに従います。
使用法
await ApiRequestContext.PutAsync(url, options);
引数
-
ターゲットURL。
-
options
ApiRequestContextPutOptions?
(オプション)-
Data|DataByte|DataObject
string? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-type
ヘッダーがapplication/json
に設定されます。それ以外の場合、明示的に設定されていない限りcontent-type
ヘッダーはapplication/octet-stream
に設定されます。 -
FailOnStatusCode
bool? (オプション)#2xxおよび3xx以外の応答コードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードに対して応答オブジェクトが返されます。
-
このリクエストボディとして送信される
application/x-www-form-urlencoded
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはapplication/x-www-form-urlencoded
に設定されます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Headers
IDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrors
bool? (オプション)#ネットワークリクエスト送信時にHTTPSエラーを無視するかどうか。デフォルトは
false
です。 -
MaxRedirects
int? (オプション)追加バージョン: v1.26#自動的に追従されるリクエストリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20
です。0
を渡すとリダイレクトは追従されません。 -
MaxRetries
int? (オプション)追加バージョン: v1.46#ネットワークエラーを再試行する最大回数。現在、
ECONNRESET
エラーのみが再試行されます。HTTP応答コードに基づいて再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0
(再試行なし)です。 -
このリクエストボディとして送信される
multipart/form-data
エンコーディングを使用してHTMLフォームとしてシリアル化されるオブジェクトを提供します。このパラメータが指定された場合、明示的に提供されない限りcontent-type
ヘッダーはmultipart/form-data
に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびその内容を含むファイルのようなオブジェクトとして渡すことができます。FormDataのインスタンスは、ApiRequestContext.CreateFormDataを介して作成できます。
-
Params
IDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsString
string? (オプション)追加バージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout
[float]? (オプション)#リクエストのタイムアウト(ミリ秒)。デフォルトは
30000
(30秒)です。0
を渡すとタイムアウトは無効になります。
-
戻り値
StorageStateAsync
追加バージョン: v1.16このリクエストコンテキストのストレージ状態を返します。コンストラクタに渡された場合、現在のクッキーとローカルストレージのスナップショットが含まれます。
使用法
await ApiRequestContext.StorageStateAsync(options);
引数
options
ApiRequestContextStorageStateOptions?
(オプション)
戻り値