简体   繁体   English

如何使用Java restassured库发布参数?

[英]How do I post with parameters using the Java restassured library?

I want to send a post request using query params, as in 我想使用查询参数发送发布请求,如

https://10.40.0.20:8443/randomText/randomText/randomText?registrationInfo=%7B%22publicIpAddress%22%20%3A%20%22193.168.0.1%22%2C%20%22networkIpAddress%22%20%3A%20%22192.168.0.1%22%2C%20%22numberOfPartitions%22%20%3A%202%2C%20%22softwareVersion%22%20%3A%20%22v123%22%2C%20%22publicSshKey%22%20%3A%20%22ssh-key%22%2C%20%22macAddress%22%20%3A%20%2226%3A18%3A31%3Abf%3A19%3Aea%22%20%7D

How do I do that using the restassured library for Java ? 如何使用针对Java的restassured库来做到这一点?

given().contentType(ContentType.JSON)
                .header("accept", "application/json")
                .header("Content-Type", "application/application.json")
                .parameters("publicIpAddress", "194.168.0.1", "networkIpAddress",
                        "192.168.0.1", "numberPartitions",
                        1, "softwareVersion", "v123",
                        "publicSshKey", "ssh-key", "macAddress",
                        "1a:57:39:96:30:10")
                .log().method()
                .log().path()
                .expect()
                .statusCode(201)
                .when()
                .post("/uri/")
                .then()
                .log().status()
                .log().body();

This is what I've written so far, but it doesn't work. 这是我到目前为止所写的,但是没有用。 It sends me a response code of 400, malformed syntax. 它向我发送了400格式错误的响应代码。

I've also used the following, but didn't work for me: 我还使用了以下内容,但对我没有用:

given().contentType(ContentType.JSON)
                .queryParam("publicIpAddress", "194.168.0.1")
                .queryParam("commsIpAddress", "192.168.0.1")
                .queryParam("numberOfActivePartitions", 1)
                .queryParam("testAgentSoftwareVersion", "v123")
                .queryParam("publicSshKey", "ssh-key")
                .queryParam("commsMac", "1a:57:39:96:30:10")
                .header("accept", "application/vnd.cobham.v1+json")
                .log().method()
                .log().path()
                .expect()
                .statusCode(201)
                .when()
                .post("/controllers/")
                .then()
                .log().status()
                .log().body();

You should use queryParam . 您应该使用queryParam

given().queryParam("name, "value")
                 .body(..)
                 .when()
                 .post(..);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 使用RESTassured库和Java列出节点中的参数 - Listing the parameters in a node using RESTassured library with Java 如何使用 RestAssured 为 CreateUser Post 请求获取所有四个 keyValue 对 - How do I get all four keyValue pairs using RestAssured for CreateUser Post request Java 使用 RestAssured 后调用的安全异常 - Java Security Exception using RestAssured post calls 如何配置Java保证库不重用cookie - How to configure java restassured library not to reuse the cookies 如何使用 restAssured 在特殊条件下提取结果? - How do I extract results with special conditions using restAssured? 使用RestAssured的JSON POST - JSON POST using RestAssured 在Spark Java中使用pac4j安全过滤器时,如何获取发布请求的参数? - How do I get the parameters of a post request when using a pac4j security filter in Spark Java? 如何使用Java,Resassured,Groovy在每个POST请求中更改文件中的Json对象请求 - How to change Json object request in a file every POST request using Java, Restassured, groovy 使用Java RestAssured创建POST请求,返回状态码422 - Create POST request, using Java RestAssured, returns status code 422 如何使用Jersey读取RESTful服务的POST参数? - How do I read POST parameters for a RESTful service using Jersey?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM