簡體   English   中英

如何使用放心將 Json 轉換為 Java 以發出 POST 請求

[英]How to convert Json to Java for making POST request using rest assured

我想使用以下有效負載發布以下請求,並尋找更好的方法來執行此操作,而不是使用轉義字符以這種方式發布。

"{\\n" + "\\t\\"name\\": \\"nameValue\\",\\n" + "\\t\\"age\\": \\"ageValue\\",\\n" + "\\t\\"sex \\": \\"sexValue\\",\\n" + "\\t\\"mobile\\": \\"mobileVal-uk\\",\\n" + "\\t\\"codes\\": [\\n" + "\\ t\\t\\"8567\\"\\n" + "\\t]\\n" + "}";

我想使用類似下面的東西,例如 arraylist、jsonObject、hashmap 或 jsonrray。

@Test
public void studentDetails() {    
RestAssured.baseURI = "  http://localhost:3000";    
JSONObject mainObject = new JSONObject();    
JSONArray array = new JSONArray();    
array.put(Integer.parseInt("codes"), "8567");    
JSONObject arrayItem = new JSONObject();    
arrayItem.put("name", "nameValue");    
arrayItem.put("age", "ageValue");    
arrayItem.put("sex", "sexValue");    
arrayItem.put("mobile", "mobileVal");    
mainObject.put(String.valueOf(array), arrayItem);
given()            
  .body(mainObject.toString())            
  .when() 
  .post("/posts")            
  .then()
  .assertThat()
  .statusCode(200)
  .contentType(ContentType.JSON);
}

我建議使用像Jackson這樣的庫。 您可以創建一個 POJO 來表示您的 JSON 對象,這將允許您輕松地在 JSON 和 Java 對象之間切換。 它會為您省去很多麻煩,而且您不必擔心所有那些糟糕的格式:)

這是一個更深入的教程 - https://mkyong.com/java/jackson-how-to-parse-json/

轉到http://www.jsonschema2pojo.org/並創建 POJO 並使用它們在對象中發送請求和響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM