如何使用 REST Assured 在 POST 请求中传递 RequestParam
How to pass RequestParam in POST request using REST Assured
这里是Dev rest客户端POST请求sudocode
public ResponseDTO upload(@RequestParam("metadata") String metaData,
@RequestParam(name="file" , required=false) MultipartFile[] multiPartFiles)
我正在尝试使用 restassured 创建一个 POST 请求。下面是我的步骤定义代码
public void havePostCall(String endpoint) {
String url = be.getBaseUrl()+endpoint;
FileInputStream fisFile = new FileInputStream(new File("Path of the json file"));
String reqPayload = IOUtils.toString(fisFile,"UTF-8");
Response rs = RestAssured.given().header("Authorization","value of token")
.queryParam("metadata",reqPayload).when().post(url).then().assertThat().statusCode(200)
.extract()
.response ()
System.out.print("Response is ==" + rs.asString())
}
正如我们所见,开发休息客户端上传方法在 POST 请求中期待请求参数,在我放心的代码中我传递了相同的但我仍然继续收到 BAD 请求。
当我与开发人员核实时,他们说将正文作为请求参数传递。
有人可以帮助我在我的步骤定义代码中做错了什么吗?
奋斗了很长时间,非常感谢任何帮助。
已解决。问题是传入 queryParam
.
的密钥
Response rs = RestAssured.given().header("Authorization","value of token")
.queryParam("metaData",reqPayload).when().post(url).then().assertThat().statusCode(200)
.extract()
.response ()
System.out.print("Response is ==" + rs.asString())
这里是Dev rest客户端POST请求sudocode
public ResponseDTO upload(@RequestParam("metadata") String metaData,
@RequestParam(name="file" , required=false) MultipartFile[] multiPartFiles)
我正在尝试使用 restassured 创建一个 POST 请求。下面是我的步骤定义代码
public void havePostCall(String endpoint) {
String url = be.getBaseUrl()+endpoint;
FileInputStream fisFile = new FileInputStream(new File("Path of the json file"));
String reqPayload = IOUtils.toString(fisFile,"UTF-8");
Response rs = RestAssured.given().header("Authorization","value of token")
.queryParam("metadata",reqPayload).when().post(url).then().assertThat().statusCode(200)
.extract()
.response ()
System.out.print("Response is ==" + rs.asString())
}
正如我们所见,开发休息客户端上传方法在 POST 请求中期待请求参数,在我放心的代码中我传递了相同的但我仍然继续收到 BAD 请求。 当我与开发人员核实时,他们说将正文作为请求参数传递。 有人可以帮助我在我的步骤定义代码中做错了什么吗? 奋斗了很长时间,非常感谢任何帮助。
已解决。问题是传入 queryParam
.
Response rs = RestAssured.given().header("Authorization","value of token")
.queryParam("metaData",reqPayload).when().post(url).then().assertThat().statusCode(200)
.extract()
.response ()
System.out.print("Response is ==" + rs.asString())