Як адправіць запыт POST з гарантыяй REST. HTML-формы выкарыстоўваюць POST-запыт для адпраўкі дадзеных формы, і ў гэтым уроку мы выкарыстоўваем REST-assured для адпраўкі формы.
Запыт POST мае чатыры элементы:
URL : Гэта месца рэсурсу, на які мы прадстаўляем дадзеныя, напрыклад www.example.com/login
ДЗЕЯСЛОЎ : пры падачы дадзеных мы выкарыстоўваем запыт POST.
ГАЛАВЫ : гэта загалоўкі запытаў, такія як Accept або Content-Type.
АРГАНІЗМ : body змяшчае дадзеныя, якія мы прадстаўляем у якасці запыту на паведамленне. Напрыклад, пры адпраўцы формы дадзеныя формы адпраўляюцца ў целе запыту.
Прыведзены ніжэй узор кода паказвае, як адправіць дадзеныя формы ў выглядзе запыту POST з гарантыяй REST версія 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);
} }
Звязаныя:
Акрамя адпраўкі дадзеных формы, вы таксама можаце выкарыстоўваць REST-гарантаваны запыт POST для адпраўкі карыснай нагрузкі JSON на нейкі рэсурс. Вось прыклад:
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();
} }