<aside> 💡 제가 만든 웹 페이지에서 로그인화면으로 넘어가지 않습니다! 현상 처리법 개발자도구 → Application → 로컬스토리지에 있는 토큰삭제
</aside>
<aside> 💡 프론트엔드 스쿨 기수가 진행되는 동안은 유지가 되나 그 외 기간은 중간에 서버를 닫을 수도 있습니다.
</aside>
<aside>
💡 ~url**?limit=Number&skip=Number**
식의 쿼리를 날릴 수 있습니다.
limit = {몇개 불러올지}&skip={몇개 건너뛸지}
ex) 게시글 10개를 넘어가고 다음 5개의 게시글을 가져온다, 11번째 게시글부터 5개의 게시글 불러오기
/post/feed/?limit=5&skip=10
이 기능을 활용해서 페이지 처리를 할 수 있습니다!
</aside>
https 서버 : https://api.mandarin.weniv.co.kr/
감귤마켓 URL : http://146.56.183.55:3000/
<aside> 💡 예시페이지 감귤마켓에서 사용중인 api와 실습용 api는 별개서버를 사용중입니다.
</aside>
const url = "[<https://api.mandarin.weniv.co.kr>](<https://api.mandarin.weniv.co.kr/>)";
try{
const res = await fetch(url+"/user/login/", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body : JSON.stringify({
"user":{
"email": emailAddr.value,
"password": pw.value
}
})
});
const resJson = await res.json();
console.log(resJson);
} catch(err){
console.error(err);
}
const url = "<https://mandarin.api.weniv.co.kr>";
try {
const response = await fetch(url+"/image/uploadfiles", {
method: "POST",
body : formData
});
const data = await response.json();
for(let i of data) {
name.push(i["filename"]);
}
if(name.length > 1) {
return name.join(",");
} else {
return name[0];
}
} catch (err) {
console.error(err);
}
프로필 등록, 프로필 수정, 상품 등록 페이지 등 이미지 등록이 필요한 페이지에서 사용하는 API입니다. 이미지 등록이 필요한 페이지에서는 우선 서버에 이미지를 전송하면 숫자로 이루어진 filename을 포함하는 응답을 받을 수 있습니다. 그 filename을 다른 정보와 함께 서버에 전송해 줍니다.
*10MB 이상의 이미지는 업로드 할 수 없습니다.