Я пытался отправить файл json через сообщение из ajax на мой контроллер, где я использую API, но не могу получить ответ
это мой скрипт, где у меня есть jsonObjects
var jsonObjects = {
"vehicle": {
"id": "272",
"year": "2017",
"marketValue": {
"amount": 345000,
"currency": "MXN"
}
},
"downPayment": {
"amount": 34500,
"currency": "MXN"
},
"installmentPlanTerms": {
"number": "36",
"frequency": "MONTHLY"
},
"casualtyInsurance": true,
"lifeInsurance": false
};
это мой ajax, где я включаю URL-адрес моего контроллера
$.ajax({
type: 'post',
url: '/vehicle/cotizar',
data: JSON.stringify(jsonObjects),
contentType: "application/json; charset=utf-8",
traditional: true,
success: function (data) {
//document.log(data.data.requestedAmount.amount);
}
});
это мой контроллер в Java Spring
@RequestMapping(value = "/vehicle/cotizar")
public String options(){
HttpHeaders headers = new HttpHeaders();
String token = "some key";
headers.set("Authorization","jwt ".concat(token));
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
HttpEntity<String> entity = new HttpEntity<String>(headers);
return restTemplate.exchange("https://apis.bbvabancomer.com/loans_sbx/v1/options-installment", HttpMethod.POST, entity, String.class).getBody();
}
я надеюсь, что контроллер вернет мне результат json, который я сделал через ajax как вы можете видеть на изображении, я использую почтальон, где я отправляю файл json через пост в API, и API возвращает мне ответ



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


я уже решил это в моем контроллере мне пришлось изменить это
@RequestMapping(value = "/vehicle/cotizar", method = RequestMethod.POST)
@ResponseBody
public String performLogin(@RequestBody String json, HttpServletRequest request, HttpServletResponse response) {
HttpHeaders headers = new HttpHeaders();
log.info("debugeo".concat(json));
String token = "some key";
headers.set("Authorization","jwt ".concat(token));
//headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
String a = "Content-Type";
String b = "application/json";
headers.set(a,b);
HttpEntity<String> entity = new HttpEntity<String>(json,headers);
log.info("con entity prueba".concat(entity.getBody()));
return restTemplate.exchange("https://apis.bbvabancomer.com/loans_sbx/v1/options-installment", HttpMethod.POST, entity, String.class).getBody();
}
и я получаю ответ обратно 1
Вам не нужно это:
JSON.stringify(jsonObjects). ТолькоjsonObjectsдолжно быть хорошо.