websocket은 브라우저가 웹소켓을 지원하지 않으면 사용하지 못한다.
하지만 socketIo 는 브라우저가 웹소켓을 지원하지 않아도 http long polling 을 사용해 지속적으로 서버에 요청을하고 데이터를 받아옴으로써 실시간 양방향 통신을 가능하게 한다.
websocket api는 브라우저에 설치되어 있지만 socketio는 따로 설치를 해주어야한다 httpserver위에서 socketserver를 돌리자. 그럼 브라우저에는 socket/socket.io.js 를 import 하기만 하면 socketio의 기능을 사용할 수 있다.
find종류인 findOneAndUpdate, findByIdAndUpdate 쿼리를 이용하여 컬렉션에 존재하는 스키마의 데이터를 업데이트 하는 일이 주어졌다고 하자. query실행 후의 업데이트된 객체를 받고 싶으면 new:true 옵션을 주어야 한다.
const result = await Comments.findByIdAndUpdate(
{ _id: commentId },
{ $set: { comment } },
{ new: true }
).exec();