관리 메뉴

Jerry

#8. res.json vs res.send vs res.end 본문

CS/Terminology

#8. res.json vs res.send vs res.end

juicyjerry 2020. 12. 17. 23:58
반응형

이 express를 사용하면서, 

위 세 가지 개념이 헷갈려서 공식 문서를 참고하여 적어보았다.

 

1. res.end([data] [, encoding])

Ends the response process. This method actually comes from Node core, specifically the response.end() method of http.ServerResponse.

Use to quickly end the response without any data. If you need to respond with data, instead use methods such as res.send() and res.json().

res.end()
res.status(404).end()

요약: 이 메서드는 보낼 데이터가 없거나 response 종료시키고 싶을 때 사용한다.  또한, res.send나 res.json 메서드 대신에 사용하기도 한다.

 

2. res.send([body])

Sends the HTTP response.

The body parameter can be a Buffer object, a String, an object, Boolean, or an Array. For example:

res.send(Buffer.from('whoop'))
res.send({ some: 'json' })
res.send('<p>some html</p>')
res.status(404).send('Sorry, we cannot find that!')
res.status(500).send({ error: 'something blew up' })

요약: 이 메서드는 http response 보내는데 바디 매개변수와 함께 보내진다.  

바디 매개변수는 버퍼 객체, 문자열, 객체, 불린, 배열이 될 수 있다.

 

3. res.json([body])

Sends a JSON response. This method sends a response (with the correct content-type) that is the parameter converted to a JSON string using JSON.stringify().

The parameter can be any JSON type, including object, array, string, Boolean, number, or null, and you can also use it to convert other values to JSON.

res.json(null)
res.json({ user: 'tobi' })
res.status(500).json({ error: 'message' })

요약: 이 메서드는 매개변수가 JSON string로 변환되어버린 response를 보낸다. 

 

 

 

 

 

source

expressjs.com/en/5x/api.html

반응형

'CS > Terminology' 카테고리의 다른 글

#11. What is a Fork in Git  (0) 2021.01.24
#10. HTTP Method Anatomy  (0) 2021.01.24
#7. What is the difference between children and childNodes in JavaScript?  (0) 2020.12.17
#6. 상대 경로와 절대 경로  (0) 2020.12.16
#5. 동기화  (0) 2020.12.16