0
Ich versuche, eine json zu einem api zu schicken, aber ich habe diesen Fehler:Wie schicke ich einen json richtig zu einem RestController mit Ajax?
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'status': was expecting ('true', 'false' or 'null')
Dies ist die javascript:
$("body").on('click','.btn-danger' ,(function(){
var id = $(this).val();
var data = {"status": "canceled",
"response": ""};
console.log(data);
$.ajax ({
type: 'PUT',
url: '/api/pendingrequests/' + id,
contentType: "application/json",
data: data,
dataType : "html"
}).done (function() {
$(this).hide();
});
}));
Der Controller:
@RequestMapping(value = "/api/pendingrequests/{requestId}", method = RequestMethod.PUT)
public ResponseEntity updateRequestStatus(@PathVariable Long requestId, @RequestBody HolidayRequestAction action) throws IOException {
return updateRequestStatusService.updateRequest(requestId, action);
}
Und POJO die ich versuche, von der Anfrage zu erhalten:
public class HolidayRequestAction {
private String status;
private String response;
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getResponse() {
return response;
}
public void setResponse(String response) {
this.response = response;
}
}
Warum bekomme ich diese Parsing Exception? Was könnte das Problem sein?
geht
"status": "canceled"
senden Haben Sie versucht, einen JSON-String anstelle eines Objekts vorbei? 'var data = '{" status ":" abgebrochen "," response ":" "};' – mjsarfattiIst der Fehler nicht schon ziemlich beschreibend? token 'status': wurde erwartet ('wahr', 'falsch' oder 'null'), bedeutet, dass die Statuseigenschaft in Daten entweder wahr/falsch/null sein sollte –