Ich habe einen alten Code, der eine AJAX-POST-Anfrage über die Post-Methode von jQuery stellt und ungefähr so aussieht:
$.post("/foo/bar", requestData,
function(responseData)
{
//do stuff with response
}
requestData
ist nur ein Javascript-Objekt mit einigen grundlegenden Zeichenfolgeneigenschaften.
Ich bin gerade dabei, unsere Daten auf Angular umzustellen, und ich möchte diesen Aufruf durch $ http.post ersetzen. Ich habe mir Folgendes ausgedacht:
$http.post("/foo/bar", requestData).success(
function(responseData) {
//do stuff with response
}
});
Als ich dies tat, erhielt ich eine 500-Fehler-Antwort vom Server. Bei Verwendung von Firebug stellte ich fest, dass dies den Anfragetext wie folgt gesendet hat:
{"param1":"value1","param2":"value2","param3":"value3"}
Die erfolgreiche jQuery $.post
sendet den Text folgendermaßen:
param1=value1¶m2=value2¶m3=value3
Der Endpunkt, den ich treffe, erwartet Anforderungsparameter und nicht JSON. Meine Frage ist also, ob es überhaupt zu sagen gibt, dass $http.post
das Javascript-Objekt als Anforderungsparameter anstelle von JSON gesendet werden soll. Ja, ich weiß, dass ich die Zeichenfolge selbst aus dem Objekt erstellen kann, aber ich möchte wissen, ob Angular sofort etwas dafür bereitstellt.