メインコンテンツにスキップ

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.23 apiRequestContext.CreateFormData

HTTP リクエストを行う際にフォームデータとマルチパートデータを提供するのに使用される、新しい FormData インスタンスを作成します。

使用法

ApiRequestContext.CreateFormData

戻り値


DeleteAsync

追加バージョン: v1.16 apiRequestContext.DeleteAsync

HTTP(S) DELETEリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

await ApiRequestContext.DeleteAsync(url, options);

引数

  • url string#

    ターゲット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.16 apiRequestContext.DisposeAsync

ApiRequestContext.GetAsync() および同様のメソッドによって返されるすべてのレスポンスはメモリに保存され、後で ApiResponse.BodyAsync() を呼び出すことができます。このメソッドはすべてのリソースを破棄し、破棄された APIRequestContext でメソッドを呼び出すと例外がスローされます。

使用法

await ApiRequestContext.DisposeAsync(options);

引数

  • options ApiRequestContextDisposeOptions? (オプション)
    • Reason string? (任意)追加されたバージョン: v1.45#

      コンテキストの破棄によって中断された操作に報告される理由。

戻り値


FetchAsync

追加バージョン: v1.16 apiRequestContext.FetchAsync

HTTP(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 });

引数

  • 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以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

    • Form FormData? (オプション)#

      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 (再試行なし) です。

    • Method string? (オプション)#

      設定されている場合、フェッチメソッドを変更します(例:PUTまたはPOST)。指定されていない場合、GETメソッドが使用されます。

    • Multipart FormData? (オプション)#

      このリクエストボディとして 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.16 apiRequestContext.GetAsync

HTTP(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 string#

    ターゲット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.16 apiRequestContext.HeadAsync

HTTP(S) HEADリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

await ApiRequestContext.HeadAsync(url, options);

引数

  • url string#

    ターゲット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.16 apiRequestContext.PatchAsync

HTTP(S) PATCHリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

await ApiRequestContext.PatchAsync(url, options);

引数

  • url string#

    ターゲットURL。

  • options ApiRequestContextPatchOptions? (オプション)

    • Data|DataByte|DataObject string? | byte[]? | [object]? (オプション)#

      リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

    • FailOnStatusCode bool? (オプション)#

      2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

    • Form FormData? (オプション)#

      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? (オプション)#

      このリクエストボディとして 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.16 apiRequestContext.PostAsync

HTTP(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 string#

    ターゲットURL。

  • options ApiRequestContextPostOptions? (オプション)

    • Data|DataByte|DataObject string? | byte[]? | [object]? (オプション)#

      リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

    • FailOnStatusCode bool? (オプション)#

      2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

    • Form FormData? (オプション)#

      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? (オプション)#

      このリクエストボディとして 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.16 apiRequestContext.PutAsync

HTTP(S) PUTリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

await ApiRequestContext.PutAsync(url, options);

引数

  • url string#

    ターゲットURL。

  • options ApiRequestContextPutOptions? (オプション)

    • Data|DataByte|DataObject string? | byte[]? | [object]? (オプション)#

      リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

    • FailOnStatusCode bool? (オプション)#

      2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

    • Form FormData? (オプション)#

      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? (オプション)#

      このリクエストボディとして 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 apiRequestContext.StorageStateAsync

このリクエストコンテキストのストレージ状態を返します。コンストラクタに渡された場合、現在のクッキーとローカルストレージのスナップショットが含まれます。

使用法

await ApiRequestContext.StorageStateAsync(options);

引数

  • options ApiRequestContextStorageStateOptions? (オプション)
    • IndexedDB bool? (オプション)追加バージョン: v1.51#

      ストレージ状態のスナップショットにIndexedDBを含めるには、trueに設定します。

    • Path string? (オプション)#

      ストレージ状態を保存するファイルパス。Path が相対パスの場合、現在の作業ディレクトリを基準に解決されます。パスが指定されていない場合でも、ストレージ状態は返されますが、ディスクには保存されません。

戻り値