TIL

jathazp·2022년 2월 19일
0

websocket vs socket io

  1. websocket은 브라우저가 웹소켓을 지원하지 않으면 사용하지 못한다.

    하지만 socketIo 는 브라우저가 웹소켓을 지원하지 않아도 http long polling 을 사용해 지속적으로 서버에 요청을하고 데이터를 받아옴으로써 실시간 양방향 통신을 가능하게 한다.

  2. websocket api는 브라우저에 설치되어 있지만 socketio는 따로 설치를 해주어야한다 httpserver위에서 socketserver를 돌리자. 그럼 브라우저에는 socket/socket.io.js 를 import 하기만 하면 socketio의 기능을 사용할 수 있다.

    • import는 body태그의 마지막에 하면 된다.
      head 태그에서 import 를 시켜주었을 때, DOM이 생성되기 전에 element의 상태에 변화를 주는 시도를 하기 때문에 제대로 작동이 안됐다.
  1. socketio는 websocket보다 많은 기능을 제공하며 무겁다. 대신 백엔드 websocket에서 일일히 백엔드의 소켓과 연결하던 과정들을 사용자가 직접할 필요 없이 알아서 백엔드의 소켓과 연결시켜 주기 때문에 편리하게 사용이 가능하다.

mongoose query new 옵션

find종류인 findOneAndUpdate, findByIdAndUpdate 쿼리를 이용하여 컬렉션에 존재하는 스키마의 데이터를 업데이트 하는 일이 주어졌다고 하자. query실행 후의 업데이트된 객체를 받고 싶으면 new:true 옵션을 주어야 한다.

const result = await Comments.findByIdAndUpdate(
      { _id: commentId },
      { $set: { comment } },
      { new: true }
).exec();

0개의 댓글