跳到主要内容

FormData

FormData 用于创建通过 APIRequestContext 发送的表单数据。

import com.microsoft.playwright.options.FormData;
// ...
FormData form = FormData.create()
.set("firstName", "John")
.set("lastName", "Doe")
.set("age", 30);
page.request().post("http://localhost/submit", RequestOptions.create().setForm(form));

方法

append

新增于:v1.44 formData.append

在 FormData 对象内的现有键上追加一个新值,如果键不存在则添加该键。文件值可以通过 PathFilePayload 传递。可以添加多个同名的字段。

FormData.set()FormData.append() 之间的区别在于,如果指定的键已存在,FormData.set() 将使用新值覆盖所有现有值,而 FormData.append() 会将新值追加到现有值集的末尾。

import com.microsoft.playwright.options.FormData;
// ...
FormData form = FormData.create()
// 仅设置名称和值。
.append("firstName", "John")
// 设置名称和值,文件名和 Content-Type 从文件路径推断得出。
.append("attachment", Paths.get("pic.jpg"))
// 设置名称、值、文件名和 Content-Type。
.append("attachment", new FilePayload("table.csv", "text/csv", Files.readAllBytes(Paths.get("my-tble.csv"))));
page.request().post("http://localhost/submit", RequestOptions.create().setForm(form));

用法

FormData.append(name, value);

参数

  • name [字符串]#

    字段名称。

  • value [字符串] | [布尔值] | [整数] | Path | Value#

    • setName [字符串]

      文件名

    • setMimeType [字符串]

      文件类型

    • setBuffer [字节数组]

      文件内容

    字段值。

返回值


create

新增于:v1.18 formData.create

创建 FormData 的新实例。

用法

FormData.create();

返回值


set

新增于:v1.18 formData.set

在表单上设置一个字段。文件值可以通过 PathFilePayload 传递。

import com.microsoft.playwright.options.FormData;
// ...
FormData form = FormData.create()
// 仅设置名称和值。
.set("firstName", "John")
// 设置名称和值,文件名和 Content-Type 从文件路径推断得出。
.set("profilePicture1", Paths.get("john.jpg"))
// 设置名称、值、文件名和 Content-Type。
.set("profilePicture2", new FilePayload("john.jpg", "image/jpeg", Files.readAllBytes(Paths.get("john.jpg"))))
.set("age", 30);
page.request().post("http://localhost/submit", RequestOptions.create().setForm(form));

用法

FormData.set(name, value);

参数

返回值