Редактор HTML-форм – Java
HTML Form Element
HTMLFormElement представляет собой класс, содержащий элементы управления вводом для отправки информации о пользователе. Используя Aspose.HTML for Java, вы можете легко заполнять HTML-формы и отправлять данные непосредственно из вашего Java-приложения. Чтобы сделать этот процесс более удобным, мы разработали пакет com.aspose.html.forms. Основным элементом этого пакета является FormEditor. Он позволяет найти в документе существующую форму, создать новую с нуля, перебрать элементы, заполнить их данными и обязательно отправить информацию на удаленный сервер. В этой статье вы узнаете, как работать с объектом FormEditor.
В этой статье вы узнаете, как работать с объектом FormEditor для управления HTML-формой в документе, элементами управления вводом и отправкой информации. Для целей тестирования в этой статье мы используем форму, разработанную сервисом https://httpbin.org.
Как использовать FormEditor в Java
Следующий фрагмент кода демонстрирует, как использовать библиотеку Aspose.HTML for Java для программного заполнения и отправки HTML-формы:
- Создайте новый экземпляр класса HTMLDocument, используя конструктор HTMLDocument(url). Укажите URL-адрес HTML-формы, которую необходимо заполнить и отправить.
- С помощью метода create(document, index) создайте экземпляр класса FormEditor, передав ему экземпляр HTMLDocument и индекс редактируемой формы (значение 0 относится к первой форме в HTML документe).
- Заполните данные, используя классы и методы com.aspose.html.forms, и сохраните заполненную HTML-форму в файл.
- Создайте экземпляр класса FormSubmitter.
- Вызовите метод
submit()класса FormSubmitter, чтобы отправить данные формы на удаленный сервер. - Проверьте статус результата отправки формы с помощью метода
isSuccess().
1// Fill out and submit an HTML form programmatically using Aspose.HTML for Java
2
3// Initialize an instance of HTML document from "https://httpbin.org/forms/post" url
4HTMLDocument document = new HTMLDocument("https://httpbin.org/forms/post");
5
6// Create an instance of FormEditor
7FormEditor editor = FormEditor.create(document, 0);
8
9// You can fill in the data using direct access to the input elements, like this:
10InputElement custname = editor.addInput("custname");
11custname.setValue("John Doe");
12
13document.save("out.html");
14
15// or this:
16TextAreaElement comments = editor.getElement(TextAreaElement.class, "comments");
17comments.setValue("MORE CHEESE PLEASE!");
18
19// or even by performing a bulk operation, like this one:
20java.util.Map<String, String> dictionary = new java.util.HashMap<>();
21dictionary.put("custemail", "john.doe@gmail.com");
22dictionary.put("custtel", "+1202-555-0290");
23
24// Create an instance of FormSubmitter
25FormSubmitter submitter = new FormSubmitter(editor);
26
27// Submit the form data to the remote server
28// If you need, you can specify user credentials and timeout for the request, etc.
29SubmissionResult result = submitter.submit();
30
31// Check the status of the result object
32if (result.isSuccess()) {
33 // Check whether the result is in json format
34 if (result.getResponseMessage().getHeaders().getContentType().getMediaType().equals("application/json")) {
35 // Print result data to console
36 System.out.println(result.getContent().readAsString());
37 } else {
38 // Load the result data as an HTML document
39 Document doc = result.loadDocument();
40 // Inspect HTML document here
41 }
42}Заключение
Классы FormEditor и FormSubmitter в библиотеке Aspose.HTML for Java предлагают упрощенный подход к программной обработке HTML-форм. Используя эти классы, разработчики могут эффективно манипулировать элементами форм, заполнять данные и отправлять информацию непосредственно из своих Java-приложений.
Aspose.HTML предлагает бесплатные онлайн Конвертеры для преобразования файлов HTML, XHTML, MHTML, EPUB, XML и Markdown в различные популярные форматы. Вы можете легко конвертировать HTML в PDF, HTML в JPG, SVG в PDF, MHTML в PDF или MD в HTML.. Просто выберите файл, выберите формат для конвертации, и все готово. Это быстро и совершенно бесплатно!
