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 или добавляет ключ, если он еще не существует. Значения файлов могут быть переданы либо как Path
, либо как FilePayload
. Можно добавить несколько полей с одинаковым именем.
Разница между 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);
Аргументы
Возвращает
create
Добавлено в: v1.18Создает новый экземпляр FormData.
Использование
FormData.create();
Возвращает
set
Добавлено в: v1.18Устанавливает поле в форме. Значения файлов могут быть переданы либо как Path
, либо как FilePayload
.
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);
Аргументы
Возвращает