클라우드 파이어스토어
Firestore가 할 수 있는 일부터 시작하세요. Firestore는 기본적으로 클라우드를 통해 사용되는 확장 가능한 NoSQL 데이터베이스입니다. 여러 플랫폼에서 데이터를 동기화 상태로 유지할 수 있습니다.
Firestore를 사용할 때 가장 유용한 부분 중 하나는 사전 빌드된 Firebase 인증을 사용하여 사용자의 로그인 정보를 거의 번거로움 없이 처리할 수 있다는 것입니다. 우리는 도중에 약간의 딸꾹질을 겪었지만 결국 작동하는 인증 시스템을 설정할 수 있었습니다!
여기에서 우리는 사용자에 대한 정보 수집을 시작해야 했습니다. 우리는 DMV에서 면허증을 갱신할 때마다 서류가 필요 없도록 하는 응용 프로그램을 만들었습니다. DMVeasy 앱을 사용하면 이 프로세스에 필요한 모든 양식에 필요한 모든 정보를 입력할 수 있으며 자동으로 pdf 형식으로 생성됩니다. 또한 여권 사본, 사회 보장 카드 등과 같은 다양한 요구 사항의 이미지를 업로드할 수 있습니다. 따라서 이러한 모든 것을 복사할 때 발생하는 낭비를 제거했습니다.
이것은 실제로 데이터베이스를 사용하게 합니다. 배우고자 하는 매우 흥미로운 과정이었고, 실제로 정말 즐겼습니다. 따라서 유사한 속성을 가진 문서를 보관할 컨테이너인 컬렉션 만들기를 시작합니다. 예를 들어 사용자 컬렉션이 있고 해당 컬렉션 내에는 고유 키로 식별되는 많은 문서가 있습니다. 그런 다음 해당 문서 내부에는 해당 특정 사용자에 대한 모든 정보가 보관되어 있습니다. 테이블을 생성하고 해당 컨테이너 내부에 열을 할당하는 것과 매우 유사하게 작동합니다. 정말 큰 차이점 중 하나는 테이블에서 모든 데이터 항목이 동일한 열을 갖는다는 것입니다. 컬렉션에서 실제로 원하는 속성을 갖도록 해당 컬렉션의 각 문서를 설정할 수 있습니다. 데이터베이스가 상당히 빨리 매우 무질서해질 수 있다는 점에서 다소 압도적으로 들릴 수 있지만 약간의 유효성 검사를 통해 우리는 꽤 좋은 위치에 앉아 있는 것처럼 느낍니다.
프로젝트를 진행하면서 만든 기능 중 하나에 대해 조금 이야기하고 싶었습니다. 사용자 정보를 업데이트하는 기능과 관련이 있습니다. 해커톤을 할 수 있는 시간이 10일 정도밖에 없었기 때문에 시간이 꽤 촉박했습니다. 이것은 Firestore와 함께 일하는 것이 정말 번창했다고 느끼는 곳 중 하나였습니다. 저는 주로 프로젝트의 백엔드 측면에 집중했고 제 파트너는 주로 pdf 기능이 작동하도록 하는 데 중점을 두었습니다. 업데이트 기능이 요청에서 수신하게 될 정보가 정확히 무엇인지 확신할 수 없었습니다. 그래서 정확히 무엇을 다시 보낼지 결정할 때까지 요청 본문의 모든 키에 대해 작동할 수 있는 동적 솔루션을 만들고 싶었습니다. 아래 내 솔루션은 다음과 같습니다.
const userInformation = {};
for ( let info in request.body ) {
if ( info !== "userId") {
userInformation[info] = request.body[info];
};
};
나는 기본적으로 request.body 객체를 반복하고 요청에서 다시 전송된 것과 일치하는 키 값 쌍을 만드는 새 객체를 만들었습니다. 데이터베이스에 정확히 어떤 정보를 저장해야 할지 고민하지 않고 계속 앞으로 나아갈 수 있도록 도와주는 솔루션에 만족했습니다. Firestore를 사용하면 컬렉션 정보를 매우 역동적으로 사용할 수 있으므로 두 가지가 매우 잘 어울립니다. 전반적으로 나는 이 프로젝트에서 작업하는 것이 매우 즐거웠습니다. 다음 블로그에서 인증 프로세스에 대해 좀 더 자세히 설명하겠습니다. 시간을 내어 읽어주셔서 감사합니다. 좋은 하루 보내세요!
Reference
이 문제에 관하여(클라우드 파이어스토어), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ktrahan2/cloud-firestore-1di6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)