Come inviare i dati del modulo con la richiesta di posta assicurata da REST

Come inviare una richiesta POST con REST-assicurato. I moduli HTML utilizzano la richiesta POST per inviare i dati del modulo e in questo tutorial utilizziamo REST-assicurato per inviare un modulo.

Una richiesta POST ha quattro elementi:

URL : Questa è la posizione della risorsa a cui inviamo i dati, ad es. www.example.com/login


VERBO : quando si inviano i dati, utilizziamo la richiesta POST.

INTESTAZIONI : queste sono le intestazioni della richiesta, come Accept o Content-Type.


CORPO : body contiene i dati che inviamo come richiesta post. Ad esempio, quando si invia un modulo, i dati del modulo vengono inviati nel corpo della richiesta.



Richiesta POST assicurata da REST

Il codice di esempio seguente mostra come inviare i dati del modulo come richiesta POST con REST-assicurato, versione 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);
} }

Relazionato:



Payload POST JSON garantito da REST

Oltre a inviare i dati del modulo, puoi anche utilizzare la richiesta POST assicurata da REST per inviare il payload JSON a una risorsa. Ecco un esempio:


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