![](/img/trans.png)
[英]POST REST API call with json body is not working in play framework with java
[英]Passing JSON Body to a REST call in java
我在執行來自 java 的后調用時遇到問題。 但是我可以從 Postman 執行相同的操作。 對於我的 rest 調用內容正文應該是這樣的
{"group": "group1","users": ["Z123456","a123456","x123456"]}
為此,我創建了一個這樣的 pojo:
public class GroupUserMapping {
String group;
ArrayList<String> users;
}
在代碼中,我創建了一個方法來像這樣向這個 pojo 添加對象
ArrayList<GroupUserMapping> usergroups = new ArrayList<>();
//some conditions
GroupUserMapping groupUserMapping = new GroupUserMapping(group,users);
usergroups.add(groupUserMapping);
現在對於所有這些對象,我需要調用 rest API
usergroups.stream().parallel().forEach(ausergroup -> {
try {
CloseableHttpClient client = HttpClients.createDefault();
HttpPost httpPost = new HttpPost(url);
Gson gson = new Gson();
String base64 = basicEncode();
httpPost.addHeader("Authorization", base64);
httpPost.setHeader("Content-type", "application/json");
StringEntity entity = new StringEntity(gson.toJson(ausergroup.toString()));
httpPost.setEntity(entity);
HttpResponse response = client.execute(httpPost);
} catch (Exception e) {
e.printStackTrace();
}
});
執行此操作后,我收到 400 錯誤代碼。 請幫我解決這個問題?
謝謝你。
我將 ausergroup.toString() 更改為 ausergroup。 它對我來說工作得很好。 但是我現在有一個新問題。 當我每次將組添加為新元素時向 pojo 添加元素時,但用戶列表正在為所有組更新。 理想情況下,每個組應該不同,但是在添加所有元素后,我看到所有組的用戶都是相同的。 我在哪里做錯了?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.