我正在使用Rest Assured进行Rest API测试并且我已经正确编码但不知道发生了什么正在显示正确的请求但在服务器请求中显示为每个输入参数为null
代码:
public class ValidateCardAPI {
public Response validatecardTest(String cardNo, Object mobileNo, String code, String progType) {
ValidateCard validateCard = new ValidateCard();
validateCard.setCardNo(cardNo);
validateCard.setMobileNo(mobileNo);
validateCard.setcCode(code);
validateCard.setProgmType(progType);
JSONObject jsonObject = new JSONObject(validateCard);
System.out.println(jsonObject);
RequestSpecification requestSpecification = RestAssured.given();
requestSpecification.contentType("application/json");
requestSpecification.accept("application/json");
requestSpecification.body(jsonObject);
Response response = requestSpecification.post("http://ipaddress:port/request url");
System.out.println(response);
return response;
}
public static void main(String args[]) throws JSONException {
ValidateCardAPI validateCardapi= new ValidateCardAPI();
Response resStatus =validateCardapi.validatecardTest("XXXXXXXXXX",null,"2222","C");
String body = resStatus.getBody().asString(); System.out.println(body);
JSONObject jsonObj = new JSONObject(body); String resvalue =
jsonObj.getString("errorMessage");
System.out.println(resvalue);
if(resvalue.equalsIgnoreCase("SUCCESS")) {
System.out.println("Validate Card APi Response is ="+resvalue);
}else {
System.out.println("Validate Card APi Response is Fail becasue ="+resvalue);
}
}
如果我做错了,请任何人提供帮助。
答案 0 :(得分:1)
// convert body in string
requestSpecification.body(jsonObject.toString());
if you have any authorisation header, please add as
requestSpecification.header("request_id", "request_id value");
requestSpecification.header("data2", "data value");
and make sure you post URL is currect