인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

이순곤님의 프로필 이미지
이순곤

작성한 질문수

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

NodeBird API 호출하기

req , res 질문드리겠습니다

해결된 질문

작성

·

130

0

index.js
const result = await request(req,'/posts/my');
res.json(result.data);
v2.js
router.get('/posts/my',verifyToken,(req,res)=>{
Post.findAll({ where : {userId:req.decoded.id}})
.then((posts)=>{
console.log(posts);
res.json({
code : 200,
payload : posts,
})
})
v2에서 프로미스가 resolve가 되고 then에 있는 res.json()메소드를 이용해서
json데이타를 리턴하고
리턴한값을 const result에서 받고 다시 res.json()으로 뿌리는건 이해했는데
result.data가 리턴한json값이 있는걸 어떻게 아셧나용??
express doc봐도 어디있는지 잘 모르겠네요;
그리고 화면에 뿌려진 posts값이 json포맷의 문자열로 나오는이유도
res.json이 내부처리에 JSON.stringfy로 변환한후 res.send()호출해서
그런거 잘 이해한거 맞을까용?

답변 2

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

res.json에는 함수를 제외한 자바스크립트의 대부분의 값이 들어갈 수 있습니다. request는 저희가 직접 만든 함수이고요. 직접 만든 것이니 공식 문서를 봐도 알 수 없습니다. axios의 response 안에 data가 있는데 그게 result.data가 됩니다.

res.json은 stringify해주는 게 맞습니다. 추가로 content-type도 application/json으로 설정해줍니다.

0

이순곤님의 프로필 이미지
이순곤
질문자

항상 빠르고 친절한 답변 감사합니다

도움됬습니다

이순곤님의 프로필 이미지
이순곤

작성한 질문수

질문하기