"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Fetch API를 사용하여 양식 데이터를 다양한 형식으로 어떻게 보내나요?

Fetch API를 사용하여 양식 데이터를 다양한 형식으로 어떻게 보내나요?

2024년 11월 20일에 게시됨
검색:226

How do you send form data with Fetch API in different formats?

Fetch API를 사용하여 양식 데이터 게시

Fetch API를 활용하여 양식 데이터를 제출할 때 고려해야 할 두 가지 주요 형식이 있습니다.

Multipart/ Form-Data

FormData를 사용하여 요청 본문을 구성하면 데이터가 자동으로 multipart/form-data 형식으로 전송됩니다. 이는 FormData의 기본 동작이며 수정할 수 없습니다.

Application/x-www-form-urlencoded

application/x-www-form-urlencoded 형식으로 데이터를 보내려면 몇 가지 옵션이 있습니다:

1. URL 인코딩 문자열:

fetch("api/xxx", {
    body: "[email protected]&password=pw",
    headers: {
        "Content-Type": "application/x-www-form-urlencoded",
    },
    method: "post",
});

2. URLSearchParams 객체:

const data = new URLSearchParams();
data.append("email", "[email protected]");
data.append("password", "mypassword");

fetch("api/xxx", {
    body: data,
    method: "post",
});

URLSearchParams를 사용할 때는 Content-Type 헤더를 지정할 필요가 없습니다. 올바른 콘텐츠 유형이 자동으로 설정되기 때문입니다.

3. FormData의 URLSearchParams:

const data = new URLSearchParams(new FormData(formElement));

fetch("api/xxx", {
    body: data,
    method: "post",
});

이 옵션을 사용하면 FormData 개체를 직접 전달하여 URLSearchParams 개체를 만들 수 있습니다. 다만, 브라우저 지원이 제한적일 수 있으므로, 사용 전 반드시 철저한 테스트를 하시기 바랍니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3