Ich kann kein JSON-Objekt an XMLHttpRequest() senden. Wenn ich jedoch string-Daten über send() sende, funktioniert es. Zum Beispiel arbeitet der folgende Code:Es konnte kein JSON-Objekt an XMLHttpRequest gesendet werden
var xhr = new XMLHttpRequest();
var url = 'https://xyz.info/api/contacts';
xhr.open("POST", url,true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {//Call a function when the state changes.
if(xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
// Request finished. Do processing here.
}
}
xhr.send("apikey=ee694eabf9e3&firstname=Raja1&lastname=Kumars&phone=123456");
Allerdings, wenn ich versuche, Daten unter Verwendung von JSON zu schicken, es nichts an die URL postet. Der folgende Code funktioniert nicht.
var xhr = new XMLHttpRequest();
var url = 'https://xyz.info/api/contacts';
xhr.open("POST", url,true);
//xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onreadystatechange = function() {//Call a function when the state changes.
if(xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
// Request finished. Do processing here.
}
}
xhr.send(JSON.stringify({
'apikey' :'ee6915d4ee4b4df66bba82277e3',
'firstname' : 'Kumar',
'lastname' : 'Sunder',
'phone':'5557773334'
}));
Im zweiten Beispiel senden Sie eine Zeichenfolge. Nicht gerade ein Json-Objekt. – Matthias
@Matthias eine String-Darstellung eines Javascript-Objekts, obwohl. Ich weiß immer noch nicht, was ein JSON-Objekt ist (existiert nicht). – James
Dumme Frage, aber unterstützt die API Beiträge vom Typ 'application/json'? Haben Sie auf der Browser-Registerkarte "devtools" des Netzwerks nachgesehen, um zu sehen, was Ihr Code tatsächlich veröffentlicht? – James