const ShowPicker = () => {
//launchImageLibrary : ์ฌ์ฉ์ ์จ๋ฒ ์ ๊ทผ
launchImageLibrary({}, async (res) => {
const formdata = new FormData()
const file = {
name: res?.assets?.[0]?.fileName,
type: res?.assets?.[0]?.type,
uri: res?.assets?.[0]?.uri,
}
formdata.append('filedata', file);
formdata.append('service', "profile")
formdata.append('serviceId', data.id)
const access_token = await getStorage("token")
await restApi.post('/file', formdata, {
headers: {
"Content-Type": "multipart/form-data",
"Authorization": `Bearer ${access_token}`
},
transformRequest: (data, headers) => {
return data;
},
}).then((response) => {
setData({ ...data, photoKey: response.data.payload.files[0].id })
})
})
}
์ฌ์ง ํฝ ํ ๋๋ง๋ค ํด๋น ๋ฐ์ดํฐ ๋ฐ์์์ ์๋ฒ๋ก ํผ๋ฐ์ดํฐ ํ์์ผ๋ก ๋ณด๋ด์ค
์ด๋ ๊ทธ๋ฅ uri๋ฅผ ๋ณด๋ด์ฃผ๋๊ฒ์ด ์๋๋ผ file ์ด๋ผ๋ ๋ญ๋ฉ์ด๋ฅผ ๋ง๋ค์ด์ ๋ณด๋ด์ฃผ์ด์ผ ํจ
file๋ญ๋ฉ์ด ์ ๋ชจ์์ ์๋ฒ์ ํฉ์ํด์ ์ ํ๋ ๊ฒ์ด ์๋๋ผ ๊ธฐ๋ณธ์ ์ธ ๋ชจ์์ด๋ผ ์ ์ด๋ฆ์ ์ง์ผ์ฃผ์ด์ผํ๋๊ฒ ๊ฐ์
ํค๋์ ์ปจํ ํธ ํ์ ๋ํ ๋ชจ์์ ๋ณ๊ฒฝ ํด ์ค์ผํ๋ค.
transformRequest๊ฐ์ ๊ฒฝ์ฐ๋ ์๋ฒ์ ๋ณด๋ผ๋ ์คํธ๋ง ๊ฐ์ผ๋ก ๋ณํ๋์ด ๋ณด๋ด์ง๋ ๋ฌธ์ ๊ฐ ์์ด ์ ๋ ๊ฒ ์ฌ์ฉํ๋ค๊ณ ํ๋ค.(๋๊ฐ์ ๊ฒฝ์ฐ์ ์ ๊ฑฐ ์์ดํด๋ ๋ฌธ์ ์์์!)
๊ธ ๋ด์ฉ์ด ๋์ ๋์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.