일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 큐
- 4기
- 소켓
- corou
- TiL
- 크래프톤 정글
- defee
- HTML
- 자바
- 크래프톤정글
- 나만무
- 티스토리챌린지
- 시스템콜
- userprog
- 코드트리
- pintos
- Vue.js
- 스택
- 알고리즘
- 핀토스
- 백준
- 모션비트
- 오블완
- JavaScript
- Java
- CSS
- 사이드프로젝트
- Flutter
- 자바스크립트
- 리액트
- Today
- Total
미새문지
크래프톤 정글 week16, day117 - 소켓 에러 해결, 로그인 로그아웃 소켓 연결, 친구창 구현 본문
소켓 에러 해결
기존에 구현한 소켓을 테스트하던 중 다른 방에 입장한 상태에서도 한쪽 방의 데이터를 변경하면 다른쪽 방까지 같이 바뀌는 것을 확인했다. 소켓 자체는 통신되었지만 각 방마다의 데이터를 분리해놓은것이 아니였기 때문에 발생한 문제였다.
그래서 서버에서 뿌려주는 데이터를 socket.on(`joinRoom${room.code}`) 이런식으로 개별적으로 나누어서 통신을 했다. 노래가 개별적으로 돌아가는 걸 확인하고 준비버튼과 채팅도 제대로 작동하는 걸 확인했다.
친구창 구현
빠진 부분 없나 코드를 살펴보던 중 친구창 구현이 빠져있어 친구창 작동 로직을 생각하던 중 상림이형이 구현한 로그인 로그아웃에 소켓을 안 넣은걸 확인했다. 친구창이 켜있는 동안 누군가가 접속하면 오프라인에서 온라인으로 바뀌어야 하기 때문이다.
그걸 위해 로그인을 할 때 프론트는 api는 그대로 유지하고 메인페이지에서 로그인한 상태를 socket.on으로 받아왔고
로그아웃은 버튼을 누를 때 api를 쏴주면서 세션 삭제처리를 하며 바로 socket.on을 받아와 전체 통신을 하고 로그인 페이지로 넘어가게 해놨다. 소켓부분은 본인이 싹 다 맡아야 해서 결국 모든 페이지를 건드릴 수 밖에 없을 듯
팀원 작업 현 상황
현재 재희님과 본인은 속도 맞춰서 구현 중이라 소켓 부분 쭉 해결 중이고 상림이형은 쭉 인게임 화면만 보고있다. 현재 웹에서 서비스 중인 리듬게임 코드를 좀 학습하면서 따라해본다곤 했는데, 현재 작업된 부분은 입력 시 노트의 타격지점에 불빛이 들어오고 각 자리에 맞게 본인 자리를 변경하면 그 레인만 불빛이 들어오고 나머지는 반투명해진다. 일단 UI쪽을 위주로 보는거 같은데 아직 노트 움직이는건 안나오는거 같아서 어떻게 될지 아직은 잘 모르겠다.
인우는 현재 미디어 파이프 인식하는 건 확인되었고 모션 성공 시 점수 오르는 것까진 완성되었으나 점수 인식이 중복되어 너무 많이 되기때문에 그 부분은 고쳐야한다고 했다. 현우님은 아직 서버랑 싸우는 중..
학습 시간 : 10 ~ 26시