Я должен сделать запрос по адресу и отправить json, json у меня в виде модели
public class RequestToPlanfix {
private String cmd;
private String providerId;
private String channel;
private String chatId;
private String planfix_token;
private String message;
private String title;
private String contactId;
private String contactName;
private String contactLastName;
private String contactIco;
private String contactEmail;
private String contactPhone;
private String contactData;
@Convert(converter = Attachments.class)
private Map<String,String> name;
@Convert(converter = Attachments.class)
private Map<String,String> url;
private Boolean isEcho;
}
, то есть я должен отправить json через https, поля которого соответствуют полям этой сущностиКак я могу получить и перевести эту сущность в JSON?Как я могу сделать запрос https дальше?
, тогда я получу ответ в виде json, поля которого являются полями следующего объекта
, то есть я получуjson и я должны сделать это:
public class RequestFromPlanfix {
private String cmd;
private String providerId;
private String chatId;
private String contactPhone;
private String channel;
private String token;
private String message;
private String userName;
private String userLastName;
private String userIco;
private String taskEmail;
@Convert(converter = Attachments.class)
private Map<String,String> name;
@Convert(converter = Attachments.class)
private Map<String,String> url;
}
поля в двух случаях различны в некоторых местах, поэтому я создал две сущности, затем, когда мы отправим запрос, мы отправим первый json, а когда получимответ второй JSON, я не могу понять, как сделать запрос и связать JSON с сущностью, спасибо
String postUrl = "www.site.com";
Gson gson = new Gson();
HttpClient httpClient = HttpClientBuilder.create().build();
HttpPost post = new HttpPost(postUrl);
StringEntity postingString = new StringEntity(gson.toJson(requestToPlanfix));//gson.tojson() converts your pojo to json
post.setEntity(postingString);
post.setHeader("Content-type", "application/json");
HttpResponse response = httpClient.execute(post);