Comment soumettre des données de formulaire avec une demande de poste assurée par REST

Comment envoyer une requête POST avec la garantie REST. Les formulaires HTML utilisent la demande POST pour soumettre des données de formulaire et dans ce didacticiel, nous utilisons REST-assuré pour soumettre un formulaire.

Une requête POST comporte quatre éléments:

URL : Il s'agit de l'emplacement de la ressource à laquelle nous soumettons des données, par ex. www.example.com/login


VERBE : lors de la soumission des données, nous utilisons la requête POST.

EN-TÊTES : ce sont des en-têtes de demande, tels que Accept ou Content-Type.


CORPS : body contient les données que nous soumettons en tant que demande de publication. Par exemple, lors de la soumission d'un formulaire, les données du formulaire sont envoyées dans le corps de la demande.



Requête POST assurée par REST

L'exemple de code ci-dessous montre comment soumettre des données de formulaire en tant que demande POST avec REST- version 3.2.0 .


io.rest-assured
rest-assured
3.2.0
test
import io.restassured.RestAssured; import io.restassured.http.ContentType; import org.junit.Test; import static io.restassured.RestAssured.given; public class restAssuredPostRequest {
@Test
public void submitForm() {
RestAssured.baseURI = 'https://www.example.com';
given().urlEncodingEnabled(true)

.param('username', 'user@site.com')

.param('password', 'Pas54321')

.header('Accept', ContentType.JSON.getAcceptHeader())

.post('/login')

.then().statusCode(200);
} }

En rapport:



Charge utile POST JSON assurée par REST

Outre la soumission de données de formulaire, vous pouvez également utiliser la requête POST assurée par REST pour envoyer une charge utile JSON à une ressource. Voici un exemple:


import io.restassured.http.ContentType; import io.restassured.response.Response; import static io.restassured.RestAssured.given; public class PostJsonPayload {
private static String payload = '{ ' +
' 'description': 'Some Description', ' +
' 'id': 'Some id', ' +
' 'name': 'Some name' ' +
'}';

public static Response postJsonPayload() {
return

given()

.contentType(ContentType.JSON)

.body(payload)

.post('/some/resource')

.then()

.statusCode(200)

.extract()

.response();
} }