私のコード:
fetch("api/xxx", {
body: new FormData(document.getElementById("form")),
headers: {
"Content-Type": "application/x-www-form-urlencoded",
// "Content-Type": "multipart/form-data",
},
method: "post",
}
私はfetch apiを使用してフォームを投稿しようとしましたが、送信する本文は次のようになります。
-----------------------------114782935826962
Content-Disposition: form-data; name="email"
test@example.com
-----------------------------114782935826962
Content-Disposition: form-data; name="password"
pw
-----------------------------114782935826962--
(送信するたびに境界内の数値が変更される理由がわかりません...)
「Content-Type」:「application / x-www-form-urlencoded」でデータを送信したいのですが、どうすればよいですか?または、それを処理する必要がある場合、コントローラーのデータをどのようにデコードしますか?
誰が私の質問に答えるか、私は次の方法でそれができることを知っています:
fetch("api/xxx", {
body: "email=test@example.com&password=pw",
headers: {
"Content-Type": "application/x-www-form-urlencoded",
},
method: "post",
}
私が欲しいのは、jQueryの$( "#form")。serialize()(jQueryを使用しない)またはコントローラのmulitpart / form-dataをデコードする方法です。回答ありがとうございます。
FormData
ですか?