소켓 연결관련 질문입니다.
1659
작성한 질문수 68
답변 1
0
새로고침을 하는 순간 세션이 닫히기 때문에 소켓 연결은 끊깁니다.
막을 방법은 클라이언트 단에서 새로고침 시에 경고(alert)창을 띄어주거나 방지하는 방법이 있습니다.
구글에 "브라우저 새로고침 방지 javascript 코드"를 검색하시면 f5 버튼 막기 등 다양한 경로의 새로고침을 클라이언트 단에서 막을 수 있는 코드가 있습니다. 참고하시면 좋을 것 같습니다. :)
이 코드를 <script>code</script>로 삽입해 주시면 됩니다.
redis 관련 프로젝트는 socket.io-redis-adapter 패키지 추천드립니다.
https://github.com/socketio/socket.io-redis-adapter
관련해서 데모를 찾아 보았는데요. https://github.com/phatvo21/nest-chat-realtime
목적에 맞는 코드와 유사할 것 같습니다!
0
우선 이렇게 예시 코드까지 갖고와주셔서.. 정말 감사합니다.
그런데 제가 생각한건 그냥 mysql이나 mongodb를 nestjs에 연결하듯
평범한 redis db를 추가로 연결한다음에 연결된 redis와 websocket으로 뭔가를 해보려했던 것인데 socket.io-redis-adapter는 뭔가 더 고차원적인거같던데.. 이게 어떤 기능들을 하는건지 알 수 있을가요?
제가 다시 구글링을 해보니까 nestjs-redis가 있고 https://www.npmjs.com/package/nestjs-redis
redis-cache가 있던데 둘중에 어떤걸 써야되는지를 모르겠네요;
0
음 그렇다면 redis-cache도 가능하긴 하지만 아무래도 더 저수준 인터페이스라 바로 간단하게 사용하실거면 nestjs-redis를 사용하는 것이 좋을 것 같습니다. 제가 nestjs-redis를 깊게 사용해보진 않아서 pub/sub 인터페이스가 좋은지는 잘 모르겠네요 ㅠㅠ 처음부터 자유롭게 수동으로 개발하실 생각이시라면 redis-cache도 괜찮은 것 같습니다!
프로젝트 환경 세팅할 때 최신 노드 버젼을 사용하시는 분들은 참고하셔도 좋을 것 같아요~
2
80
1
DTO에 대한 질문
1
87
2
백엔드 MVC에서 View의 역할은 무엇인가요?
1
93
2
추가 업데이트 관련 건
0
90
2
nest js 버전문제
0
79
2
mongdb 스키마 공식 문서와 형태가 다른 이유 궁금합니다.
0
103
1
라인 끝에 에러 표시(eslint) 때문에 구글 찾아 보니.
0
74
1
전체 고양이 조회 라우터 중 error.message 오류
0
67
1
캡슐화 추가 설명 중 단일책임원칙 관련 질문
0
104
0
42강 고양이끼리 소통 댓글 구현 중 Schema hasn't been registered for model 'comments' 에러 해결
0
81
1
채팅 이슈
0
133
1
모듈이 더 이상 지원하지 않는답니다
0
206
1
오류가 있습니다
0
106
1
import 에서 오류가 납니다
0
127
1
이런 오류가 나옵니다
0
100
1
에러가 발생합니다
0
109
1
프론트 에러 뜨는데 수정 안해주시나요
0
156
1
emit() broadcast.emit() 질문있습니다
0
101
1
서버연결이 안됩니다.
1
403
1
[PM2][ERROR] Command not found
0
519
1
S3에 업로드까지는 성공했는데 사진이 나오지 않습니다.
0
248
1
error_code : Property 'user' does not exist on type 'Request<ParamsDictionary, any, any, ParsedQs, Record<string, any>>'.ts(2339)
0
601
1
jwt를 따로 연습하고 있는데 env를 못읽는 것 같습니다.
0
322
2
Ec2로 안하시는 이유가 있을까요?
0
343
1





