Ich habe eine einfache Jquery Ajax Anruf zu einem Rest Service. Ich setze den contentType als "application/json" und die Rest-Ressource ist konfiguriert, um "MediaType.APPLICATION_JSON" zu akzeptieren. Dies ist eine POST-Methode. Mit dieser Einrichtung erhalte ich "nicht unterstützten Medientyp" Fehler.jquery Ajax Rest Anruf - nicht unterstützte Medientyp
Die Header-Informationen zeigen "Content-Type application/json; charset = UTF-8" im Request-Header
Antwort zeigt: Bericht Status: Nicht unterstützten Medientyp Der Server diesen Antrag abgelehnt weil die Anforderungseinheit in einem Format vorliegt, das von der angeforderten Ressource für die angeforderte Methode nicht unterstützt wird (nicht unterstützter Medientyp).
Bitte geben Sie einige Hinweise, um dieses Problem zu beheben. Hier
ist der Code-Schnipsel:
Erholung Ressourcen
@POST
@Produces({MediaType.APPLICATION_JSON,MediaType.TEXT_HTML})
@Consumes({MediaType.APPLICATION_JSON,MediaType.TEXT_HTML})
public Response addPerson(MyJSONObj myObj) {
//...
// ...
//...
}
jquery
$(document).ready(function() { /* put your stuff here */
$("#Button_save").click(function(){
var firstName = $('firstName').val();
var lastName = $('lastName').val();
var person = {firstName: firstName, lastName: lastName};
$.ajax({
url:'http://localhost:8080/sampleApplication/resources/personRestService/',
type: 'POST',
data: person,
Accept : "application/json",
contentType: "application/json",
success:function(res){
alert("it works!");
},
error:function(res){
alert("Bad thing happend! " + res.statusText);
}
});
});
});
Headers wie in FF Firebug angezeigt
HeadersAntwort
Content-Length 1117
Content-Type text/html;charset=utf-8
Date Thu, 05 Apr 2012 09:44:45 GMT
Server Apache-Coyote/1.1
Anfrageheaders
Accept */*
Accept-Encoding gzip, deflate
Accept-Language en-us,en;q=0.5
Connection keep-alive
Content-Length 97
Content-Type application/json; charset=UTF-8
Host localhost:8080
Referer http://localhost:8080/sampleApplication/
User-Agent Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko/20100101 Firefox/11.0
X-Requested-With XMLHttpRequest
Getestet die @Options und es scheint nicht zu funktionieren, auch die Kopfzeile muss in der Antwort gesetzt werden –
könnten Sie weitere Informationen zur Verfügung stellen, welcher Fehler auftritt? Weil ich diesen Code in allen meinen Projekten verwende. –