Ich versuche, ein JSON-Objekt mit fetch zu POSTEN .
Soweit ich verstehen kann, muss ich dem Text der Anfrage ein stringifiziertes Objekt hinzufügen, z.
fetch("/echo/json/",
{
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
method: "POST",
body: JSON.stringify({a: 1, b: 2})
})
.then(function(res){ console.log(res) })
.catch(function(res){ console.log(res) })
Wenn Sie das json-Echo von jsfiddle verwenden, würde ich erwarten, dass das von mir gesendete Objekt ( {a: 1, b: 2}) zurückgesendet wird, aber dies geschieht nicht - chrome devtools zeigt den JSON nicht einmal als Teil der Anforderung an, was bedeutet, dass es nicht gesendet wird.
{}
res.json()sollte zurückkehren {a: 1, b: 2}.
jsonEigenschaft einzuschließen, die die Daten enthält, die Sie senden möchten. Allerdings wird das bodysowieso nicht richtig behandelt. Sehen Sie sich diese Geige an, um zu sehen, dass die Verzögerung von 5 Sekunden übersprungen wird. jsfiddle.net/99arsnkg Wenn Sie versuchen, zusätzliche Header hinzuzufügen, werden diese ignoriert. Dies ist wahrscheinlich ein Problem mit sich fetch()selbst.