をフェッチ使用してデータを転記することはできません。にはJavaScriptを有効にし、私は<code>fetch</code> APIを使用して自分のサーバーに<code>POST</code>データにしようとしていると私はやるたびに、私は空のボディで終わるAPI
私がfetch
documentationから知る限り、データを投稿するには、メソッドキーを "POST"に設定し、本体キーに文字列またはFormData
オブジェクト(または他のもの)を渡す必要があります。私はまた、リクエストボディをログに記録し、それに応答して、それをエコー本の背面に明示サーバーを持っている
var formData = new FormData();
formData.append("test", "woohoo");
formData.append("foo", "bar")
// prints out contents of formData to show that it has contents!
formData.forEach(function(key, value) {
console.log(`${key}: ${value}`);
});
fetch("/fetch", {
method: "POST",
body: formData
}).then(function(response) {
return response.json();
}).then(function(json) {
// Logs empty object
console.log(json);
}).catch(function(err) {
console.log(err);
});
:
は、ここで私が期待するとしてだけで動作していない単純な例です。
app.post("/fetch", function(req, res) {
// Logs empty object :(
console.log(req.body);
res.send(JSON.stringify(req.body));
});
私はfetch
リクエストのボディとしてformData
を追加したが、何も今までに通過するようです。
Please find my test files in this gist hereと助けて!あなたのノードサーバがデフォルトでお送りします(何FormData
である)を正しくマルチパートフォームを理解していないので、
私はあなたが新しいテニスボールを投げる '欠けていると信じて()'、あなたがフェッチするために必要なすべてです。 :) – markthethomas