APIRequestContext
このAPIは、Web APIテストに使用されます。APIエンドポイントのトリガー、マイクロサービスの構成、e2eテストのための環境やサービスの準備に使用できます。
Playwright の各ブラウザコンテキストには、ブラウザコンテキストとクッキーストレージを共有する APIRequestContext インスタンスが関連付けられており、BrowserContext.APIRequest または Page.APIRequest 経由でアクセスできます。ApiRequest.NewContextAsync() を呼び出すことで、新しい APIRequestContext インスタンスを手動で作成することも可能です。
クッキー管理
BrowserContext.APIRequest および Page.APIRequest によって返される APIRequestContext は、対応する 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。
-
optionsApiRequestContextDeleteOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)追加バージョン: v1.17#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
FormFormData? (オプション)追加バージョン: v1.17#application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
MultipartFormData? (オプション)追加バージョン: v1.17#このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout[float]? (オプション)#リクエストのタイムアウト(ミリ秒単位)。デフォルトは
30000(30秒)です。タイムアウトを無効にするには0を渡します。
-
戻り値
DisposeAsync
追加バージョン: v1.16ApiRequestContext.GetAsync() および同様のメソッドによって返されるすべてのレスポンスはメモリに保存され、後で ApiResponse.BodyAsync() を呼び出すことができます。このメソッドはすべてのリソースを破棄し、破棄された APIRequestContext でメソッドを呼び出すと例外がスローされます。
使用法
await ApiRequestContext.DisposeAsync(options);
引数
optionsApiRequestContextDisposeOptions?(オプション)
戻り値
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パラメータを指定して、multipart/form-dataエンコーディングでフォームフィールドとしてアップロードすることです。
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 });
引数
-
urlOrRequeststring | Request#すべてのパラメータを取得するターゲットURLまたはリクエスト。
-
optionsApiRequestContextFetchOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
設定されている場合、フェッチメソッドを変更します(例:PUTまたはPOST)。指定されていない場合、GETメソッドが使用されます。
-
このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: 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。
-
optionsApiRequestContextGetOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)追加バージョン: v1.26#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
FormFormData? (オプション)追加バージョン: v1.26#application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
MultipartFormData? (オプション)追加バージョン: v1.26#このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout[float]? (オプション)#リクエストのタイムアウト(ミリ秒単位)。デフォルトは
30000(30秒)です。タイムアウトを無効にするには0を渡します。
-
戻り値
HeadAsync
追加バージョン: v1.16HTTP(S) HEADリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。
使用法
await ApiRequestContext.HeadAsync(url, options);
引数
-
ターゲットURL。
-
optionsApiRequestContextHeadOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)追加バージョン: v1.26#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
FormFormData? (オプション)追加バージョン: v1.26#application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
MultipartFormData? (オプション)追加バージョン: v1.26#このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout[float]? (オプション)#リクエストのタイムアウト(ミリ秒単位)。デフォルトは
30000(30秒)です。タイムアウトを無効にするには0を渡します。
-
戻り値
PatchAsync
追加バージョン: v1.16HTTP(S) PATCHリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。
使用法
await ApiRequestContext.PatchAsync(url, options);
引数
-
ターゲットURL。
-
optionsApiRequestContextPatchOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: 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。
-
optionsApiRequestContextPostOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout[float]? (オプション)#リクエストのタイムアウト(ミリ秒単位)。デフォルトは
30000(30秒)です。タイムアウトを無効にするには0を渡します。
-
戻り値
PutAsync
追加バージョン: v1.16HTTP(S) PUTリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。
使用法
await ApiRequestContext.PutAsync(url, options);
引数
-
ターゲットURL。
-
optionsApiRequestContextPutOptions?(オプション)-
Data|DataByte|DataObjectstring? | byte[]? | [object]? (オプション)#リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り
content-typeヘッダーはapplication/jsonに設定されます。それ以外の場合、明示的に設定されていない限りcontent-typeヘッダーはapplication/octet-streamに設定されます。 -
FailOnStatusCodebool? (オプション)#2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。
-
application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
HeadersIDictionary?<string, string> (オプション)#HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。
-
IgnoreHTTPSErrorsbool? (オプション)#ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトは
falseです。 -
MaxRedirectsint? (任意)追加バージョン: v1.26#自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは
20です。リダイレクトをフォローしない場合は0を渡します。 -
MaxRetriesint? (オプション)追加バージョン: v1.46#ネットワークエラーが再試行される最大回数。現在、
ECONNRESETエラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは0(再試行なし) です。 -
このリクエストボディとして
multipart/form-dataエンコーディングを使用して HTML フォームとしてシリアル化され、送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限りcontent-typeヘッダーはmultipart/form-dataに設定されます。ファイルの値は、ファイル名、MIME タイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。FormData のインスタンスは ApiRequestContext.CreateFormData 経由で作成できます。
-
ParamsIDictionary?<string, [object]> (オプション)#URLとともに送信されるクエリパラメータ。
-
ParamsStringstring? (オプション)追加されたバージョン: v1.47#URLとともに送信されるクエリパラメータ。
-
Timeout[float]? (オプション)#リクエストのタイムアウト(ミリ秒単位)。デフォルトは
30000(30秒)です。タイムアウトを無効にするには0を渡します。
-
戻り値
StorageStateAsync
追加バージョン: v1.16このリクエストコンテキストのストレージ状態を返します。コンストラクタに渡された場合、現在のクッキーとローカルストレージのスナップショットが含まれます。
使用法
await ApiRequestContext.StorageStateAsync(options);
引数
optionsApiRequestContextStorageStateOptions?(オプション)
戻り値