Я новичок в Spring Boot, а также в REST API. Я пытаюсь интегрировать платежный шлюз для создания платежных запросов и для этого использую платежный шлюз Instamojo. Я получаю NULL в ответе с 200 кодами успеха. В чем основное различие между postForObject
, postForEntity
или некоторыми людьми, использующими метод обмена? Похоже, что postForEntity
и метод обмена используются для получения возврата для reponseEntity
. Когда мне следует перейти на postForObject
, postForEntity
или метод обмена? Может кто-нибудь сказать мне, что я делаю не так?
@PostMapping(value="/paymentcreate")
public void createOrderCashFree(@RequestBody CreateOrder createorder) {
CreateOrder corder = new CreateOrder();
corder.setAmount(createorder.getAmount());
corder.setBuyer_name(createorder.getBuyer_name());
corder.setEmail(createorder.getEmail());
corder.setPurpose(createorder.getPurpose());
corder.setPhone(createorder.getPhone());
corder.setRedirect_url("https://www.google.com/"); // just for test
corder.setWebhook("");
corder.setAllow_repeated_payments(false);
corder.setSend_email(false);
corder.setSend_sms(false);
corder.setExpire_at(new Date());
HttpHeaders header = new HttpHeaders();
header.setContentType(MediaType.APPLICATION_JSON);
header.set("X-Api-Key", "test-api-key"); // actual key is provided
header.set("X-Auth-Token","test-auth-token"); // actual token is provided
HttpEntity<CreateOrder> entity = new HttpEntity<CreateOrder>(corder, header);
System.out.println(entity.getBody());
CreateOrder response =resttemplate.postForObject("https://test.instamojo.com/api/1.1/payment-requests/", entity, CreateOrder.class);
System.out.println(response); // this return null
}
Ожидаемый результат - ответ с некоторыми полями, но фактический результат
код успеха 200, но NULL в теле.