Firebase를 사용하여 응용 프로그램을 작성하고 있습니다. 이 앱의 기능 중 하나는 사용자가 다른 사용자에게 메시지를 보낼 수있는 채팅 기능입니다. this one 또는 this one과 같이 이것을 구현하는 방법을 설명하는 온라인 자습서는 모두 익명 인증을 사용하므로 많은 원칙이 적용되지 않습니다. 이 기능을 사용하려면 먼저 사용자를 인증해야합니다.Firebase 용 메시징 응용 프로그램 데이터베이스 구조
내가 처분 할 수있는 두 가지 주요 사항은 내 응용 프로그램의 JSON 데이터베이스 구조에서 특정 경로의 내용을 수정 (추가, 편집, 삭제, 변경 순서)하고 이러한 변경 사항을 클라이언트 측에서 관찰하는 것입니다 그들이 일어날 때. 모든 메시지를 동일한 하위에 쉽게 넣을 수 있으며 메시지 자식에 대한 변경 사항을 수신 한 다음 현재 사용자 ID와 관련된 메시지를 찾아 클라이언트 쪽에서 모든 메시지를 대화 형식으로 구문 분석 할 수 있습니다. 그러나이 방법은 많은 불필요한 메시지를 필터링해야하는 것처럼 비효율적 인 것처럼 보입니다.
관찰 구조가 어떻게 작동해야하는지, 각 메시지에 무엇을 포함해야하는지, 별도의 대화로 효율적으로 정렬하는 방법에 대한 설명은 매우 유용 할 것입니다.
지도 주셔서 감사합니다. 매우 도움이됩니다. 나의 유일한 생각은 모든 대화방을 수동으로 분석하고 사용자가 chatroom ID를 기반으로 한 사용자인지 확인하는 것입니다 (데이터를 채우기 시작할 때 느리게 다운로드 할 수 있습니다). 채팅룸 ID가 포함 된 다른 노드를 만들고이를 통해 검색하는 것이 좋습니다. –
그것은 실제로 나쁜 생각 일 것입니다. 일반적으로 각 UID로 각 사용자의 방 목록을 가져옵니다. 그래서 :'/ userrooms/$ uid/roomid1 : true','/ usersrooms/$ uid/roomid2 : true' 등 –