Мой код:
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",
}
Я хочу что-то вроде $ ("# form"). Serialize () в jQuery (без использования jQuery) или способ декодирования mulitpart / form-data в контроллере. Спасибо за ответы.
FormData
?