본문 바로가기
프로젝트관련/콜렉트 미스터 텅

@RequstPart fetch 성공

by 자비리뷰 2023. 6. 19.

사실 지금 왜 되는지는 모른다.

독서실 도착해서 2시간 정도 하다가 안 돼

낮잠자고 30분 정도만에 해결됐다.

 

일단 일정이 밀려있기에 나중에 비교분석(?)하기위해 적어둔다.

 

되는 코드

function imgUpload() {

    const fileInput = document.getElementById("imageData2");

    var myHeaders = new Headers();
    var formdata = new FormData();
    formdata.append("image", fileInput.files[0])
    formdata.append("collect", new Blob([JSON.stringify({
        "memberId": userId,
        "information": content.value,
        "lat": lat.value,
        "lng": lng.value
    })], { type: 'application/json' }));
    // formdata.append("collect", new Blob([JSON.stringify({"memberId": "1", "lat": "3.0", "lng": "3.55", "information": "말해뭐해~"})], { type: 'application/json' }));
    // formdata.append("collect", "{\"memberId\":\"1\",\"lat\":\"3.0\",\"lng\":\"3.55\",\"information\":\"말해뭐해~\"}");


    var requestOptions = {
        method: 'POST',
        headers: myHeaders.append("Content-Type", "multipart/form-data"),
        body: formdata,
        redirect: 'follow'
    };

    fetch("http://localhost:8080/main/uploadImage", requestOptions)
        .then(response => response.text())
        .then(result => console.log(result))
        .catch(error => console.log('error', error));

    modalReset()
}

 

안되는 코드

function imgUpload2() {
    const fileInput = document.getElementById("imageData2");

    console.log(fileInput.files[0]);

    var myHeaders = new Headers();
    myHeaders.append("Content-Type", "multipart/form-data; boundary=--------------------");
    // myHeaders.append("Content-Type", "multipart/form-data; boundary=--MyBoundary123")

    var formdata = new FormData();
    formdata.append("image", fileInput.files[0])
    formdata.append("collect", new Blob([JSON.stringify({
        "memberId": userId,
        "information": content.value,
        "lat": lat.value,
        "lng": lng.value
    })], { type: 'application/json' }));

    var requestOptions = {
        method: 'POST',
        headers: myHeaders,
        body: formdata,
        redirect: 'follow'
    };

    fetch("http://localhost:8080/main/uploadImage", requestOptions)
        .then(response => response.text())
        .then(result => console.log(result))
        .catch(error => console.log('error', error));


}

 

일단 다음 스탭을 위해 이만 적는다.