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}
.
json
Eigenschaft einzuschließen, die die Daten enthält, die Sie senden möchten. Allerdings wird das body
sowieso 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.