Ungasithumela kanjani isicelo se-POST nesiqiniseko se-REST. Amafomu e-HTML asebenzisa isicelo se-POST ukuhambisa idatha yefomu nakulesi sifundo, sisebenzisa i-REST-guaranteed ukuhambisa ifomu.
Isicelo se-POST sinezinto ezine:
I-URL : Le indawo yomthombo esithumela kuwo idatha, isb. www.example.com/login
ISENZO : lapho sifaka idatha, sisebenzisa isicelo se-POST.
ZINHLOKO : lezi izihloko zezicelo, ezinjenge-Yamukela noma Uhlobo Lokuqukethwe.
UMZIMBA : umzimba uqukethe idatha esiyithumela njengesicelo seposi. Isibonelo, lapho kufakwa ifomu, idatha yefomu ithunyelwa emzimbeni wesicelo.
Ikhodi eyisampula engezansi ikhombisa ukuthi ungayifaka kanjani idatha yefomu njengesicelo se-POST ngokuqinisekiswa oku-REST, inguqulo 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);
} }
Okuhlobene:
Ngaphandle kokuhambisa idatha yeFomu, ungasebenzisa futhi isicelo se-REST-guaranteed POST ukuthumela i-JSON payload kwesinye isisetshenziswa. Nasi isibonelo:
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();
} }