MongoDB Realm Phản ứng
Hôm nay, chúng ta sẽ tìm hiểu cách triển khai Xác thực mật khẩu email đầy đủ trong React bằng cách tận dụng MongoDB Realm bằng cách nhập một dòng mã phía máy chủ Show
Thiết lập ứng dụng React của bạn
npx create-react-app expengo Hãy chắc chắn rằng bạn có nút. js & npm được cài đặt trên máy của bạn
MongoDB Realm Web SDK cho phép các ứng dụng dựa trên trình duyệt truy cập dữ liệu được lưu trữ trong MongoDB Atlas và tương tác với các dịch vụ MongoDB Realm như Chức năng, xác thực & GraphQL npm install realm-web Hãy cài đặt một vài gói npm khác để làm cho cuộc sống của chúng ta dễ dàng hơn
npm install react-router-dom 2. UI UI để giúp chúng tôi xây dựng các thành phần đẹp mà không cần viết nhiều CSS, hãy chạy npm install @mui/material @emotion/styled @emotion/react Bây giờ, hãy tạo 3 thư mục mới với các tệp sau như bên dưới
Hãy mở thư mục expengo này trong trình chỉnh sửa mã của chúng tôi, nếu mọi thứ hoạt động tốt, thư mục của chúng tôi sẽ có cấu trúc sau ├── README.md Kết nối Ứng dụng React của bạn với Realm và xử lý việc quản lý người dùngTrong phần này, chúng tôi sẽ tạo các chức năng & thành phần React trong ứng dụng của mình để cung cấp cho người dùng khả năng Đăng nhập, Đăng ký và Đăng xuất
Thiết lập MongoDBĐể bắt đầu, chúng tôi cần đăng nhập hoặc đăng ký vào tài khoản MongoDB của mình và làm theo tùy chọn áp dụng cho chúng tôi Đối với một tài khoản mới (Đăng ký) Chọn Chia sẻ làm loại cơ sở dữ liệu Nhấp vào Tạo để thiết lập một cụm. Điều này đôi khi có thể mất thời gian để thiết lập Tiếp theo, chúng ta cần tạo một người dùng để truy cập cơ sở dữ liệu bên ngoài bằng cách nhập Tên người dùng, Mật khẩu rồi nhấp vào Tạo người dùng. Chúng tôi cũng cần thêm địa chỉ IP của mình để kết nối an toàn với cơ sở dữ liệu bằng cách nhấp vào nút Thêm địa chỉ IP hiện tại của tôi. Sau đó bấm vào Kết thúc và Đóng để lưu thay đổi Khi lưu các thay đổi, chúng ta sẽ thấy màn hình Triển khai cơ sở dữ liệu, như hình bên dưới Đối với tài khoản hiện tại (Đăng nhập) Nhập 2 làm tên dự án, nhấp vào Tiếp theo rồi nhấp vào Tạo dự ánNhấp vào Xây dựng cơ sở dữ liệu Chọn Chia sẻ làm loại cơ sở dữ liệu Nhấp vào Tạo để thiết lập một cụm. Điều này đôi khi có thể mất thời gian để thiết lập Tiếp theo, chúng ta cần tạo một người dùng để truy cập cơ sở dữ liệu bên ngoài bằng cách nhập Tên người dùng, Mật khẩu rồi nhấp vào Tạo người dùng. Chúng tôi cũng cần thêm địa chỉ IP của mình để kết nối an toàn với cơ sở dữ liệu bằng cách nhấp vào nút Thêm địa chỉ IP hiện tại của tôi. Sau đó bấm vào Kết thúc và Đóng để lưu thay đổi Khi lưu các thay đổi, chúng ta sẽ thấy màn hình Triển khai cơ sở dữ liệu, như hình bên dưới Đang tải dữ liệu mẫuTiếp theo, chúng ta cần điền dữ liệu mẫu của người dùng vào cơ sở dữ liệu của mình. Để thực hiện việc này, hãy nhấp vào nút Duyệt bộ sưu tập Bấm vào Thêm dữ liệu của riêng tôi, nhập 3 và 4 làm cơ sở dữ liệu và tên bộ sưu tập, rồi bấm vào TạoTiếp theo, chúng ta cần chèn những dữ liệu mẫu này
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Để thực hiện việc này, nhấp vào nút Chèn Tài liệu, điền các thông tin chi tiết ở trên và nhấp vào Chèn để lưu Tạo và cấu hình ứng dụng MongoDB RealmVới cơ sở dữ liệu của chúng tôi được điền, chúng tôi cần tạo các chức năng không có máy chủ để thực hiện Tạo, Đọc, Cập nhật và Xóa (CRUD) trên cơ sở dữ liệu của chúng tôi. Để thực hiện việc này, hãy chọn tab Vương quốc, nhấp vào Xây dựng ứng dụng của riêng bạn. Sau đó bấm vào Tạo ứng dụng Realm để thiết lập ứng dụng của chúng tôi MongoDB Realm cũng cung cấp các mẫu mà chúng ta có thể sử dụng để xây dựng ứng dụng của mình một cách nhanh chóng. Đối với hướng dẫn này, chúng tôi sẽ xây dựng từ đầu Tiếp theo, chúng ta cần thiết lập quyền và quy tắc cho các chức năng của mình. Để thực hiện việc này, hãy đóng hướng dẫn bật lên, nhấp vào Quy tắc, chọn ReacRealmCol và nhấp vào Cấu hình bộ sưu tập MongoDB Realm lưu và triển khai Khi viết một chức năng không có máy chủ, nhấp vào Lưu sẽ tạo một bản nháp phát triển mà chúng tôi có thể kiểm tra và sử dụng xung quanh. Đồng thời, Deploy công khai các thay đổi của chúng ta để ứng dụng khác sử dụng (React. js trong trường hợp của chúng tôi) Nhấn Next rồi Got it để tiếp tục Tiếp theo, chúng ta cần cấp quyền Đọc và Viết cho chức năng của mình rồi Lưu Tiếp theo, điều hướng đến tab Xác thực, nhấp vào Cho phép người dùng đăng nhập ẩn danh, bật tính năng này và Lưu bản nháp MongoDB Realm cũng cung cấp một số tùy chọn xác thực mà chúng ta có thể khám phá. Đối với hướng dẫn này, chúng tôi sẽ sử dụng tùy chọn ẩn danh Tạo các hàm serverless trên MongoDB RealmNhận tất cả người dùng Chức năng không có máy chủ 5 làm tên hàmTiếp theo, chọn tab Trình chỉnh sửa chức năng và sửa đổi chức năng thành như sau
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Tiếp theo, chúng ta có thể kiểm tra chức năng của mình bằng cách nhấp vào nút Run để xem danh sách người dùng Cuối cùng, chúng ta cần sao chép 8 của bất kỳ người dùng nào đã trả lại và lưu nó ở đâu đó; . Sau đó nhấp vào Lưu bản nháp để tạo bản nháp triển khai cho chức năng của chúng tôiNhận chức năng không có máy chủ của người dùng 9 làm tên hàmTiếp theo, chọn tab Trình chỉnh sửa chức năng và sửa đổi chức năng thành như sau
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Để kiểm tra chức năng của chúng tôi, hãy điều hướng đến tab Bảng điều khiển, thay thế 5 trong chức năng xuất bằng 8 của người dùng mà chúng tôi đã sao chép trước đó và sau đó nhấp vào ChạyCuối cùng, chúng ta cần lưu chức năng của mình bằng cách nhấp vào nút Lưu bản nháp Chỉnh sửa chức năng không có máy chủ của người dùng Đầu tiên, nhấp vào tab Chức năng, nhấp vào Tạo chức năng mới và nhập ____14_______7 làm tên hàm Tiếp theo, chọn tab Trình chỉnh sửa chức năng và sửa đổi chức năng thành như sau
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Tiếp theo, chúng ta có thể kiểm tra chức năng của mình bằng cách điều hướng đến tab Bảng điều khiển, thay thế 5 trong hàm xuất bằng các đối số được yêu cầu (_id, tên, vị trí và tiêu đề), nhấp vào Chạy, sau đó Lưu bản nhápTạo chức năng Serverless người dùng Đầu tiên, nhấp vào tab Chức năng, nhấp vào Tạo chức năng mới và nhập ____19_______8 làm tên hàm Tiếp theo, chọn tab Trình chỉnh sửa chức năng và sửa đổi chức năng thành như sau
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Tiếp theo, chúng ta có thể kiểm tra chức năng của mình bằng cách điều hướng đến tab Bảng điều khiển, thay thế 5 trong hàm xuất bằng các đối số được yêu cầu (tên, vị trí và tiêu đề), nhấp vào Chạy, sau đó Lưu bản nhápXóa chức năng không có máy chủ của người dùng Đầu tiên, nhấp vào tab Chức năng, nhấp vào Tạo chức năng mới và nhập ____28_______5 làm tên hàm Tiếp theo, chọn tab Trình chỉnh sửa chức năng và sửa đổi chức năng thành như sau
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Tiếp theo, chúng ta có thể kiểm tra chức năng của mình bằng cách điều hướng đến tab Bảng điều khiển, thay thế 5 trong hàm xuất bằng đối số được yêu cầu, nhấp vào Chạy, sau đó Lưu bản nhápTriển khai các chức năng serverlessĐể bắt đầu sử dụng các chức năng serverless trong ứng dụng của mình, chúng ta cần triển khai chúng. Để thực hiện việc này, nhấp vào nút Xem lại bản nháp & triển khai, cuộn xuống và sau đó nhấp vào Triển khai Chúng tôi sẽ nhận được lời nhắc hiển thị trạng thái triển khai của chúng tôi Cuối cùng. Tích hợp với React. jsĐể tích hợp MongoDB Realm trong ứng dụng của chúng tôi, chúng tôi cần cài đặt các phụ thuộc với
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình 1 là để truy cập MongoDB Realm từ trình duyệt webThiết lập biến môi trường 2 trong thư mục gốc của dự án và trong tệp này, hãy thêm đoạn mã bên dưới
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Để lấy ID ứng dụng Realm của chúng tôi, chúng tôi cần nhấp vào biểu tượng sao chép như hình bên dưới Thiết lập Vương quốc MongoDB 3 trong thư mục 4, và trong thư mục này, tạo tệp 5 và thêm đoạn mã bên dưới 0Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Nhận tất cả người dùng 8 trong thư mục 4, và trong thư mục này, tạo tệp 0 và thêm đoạn mã bên dưới 1Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Tái bút. Dấu hỏi phía trước _id cho TypeScript biết rằng thuộc tính này là tùy chọn vì MongoDB tự động tạo nó Tiếp theo, chúng ta cần sửa đổi 1 bằng cách cập nhật nó với đoạn trích bên dưới 2Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Ứng dụng hoàn chỉnh. tsx 3Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Tạo người dùng 1 bằng cách tạo biến trạng thái để quản lý giá trị trả về khi người dùng được tạo. Chúng ta cũng cần thêm trạng thái dưới dạng phụ thuộc vào móc 6; . Cuối cùng, chúng ta cần cập nhật thành phần 2 bằng hàm trạng thái để cập nhật giá trị 4Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Tái bút. TypeScript sẽ phàn nàn về thành phần 3 không có thuộc tính setUserValue. Chúng tôi sẽ khắc phục điều nàyTiếp theo, điều hướng đến tệp 4 bên trong thư mục 5, cập nhật giao diện và tạo người dùng 5Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Chỉnh sửa người dùng 1 bằng cách tạo một biến trạng thái để quản lý 8 của người dùng mà chúng tôi muốn chỉnh sửa. Chúng tôi cũng đã cập nhật sự kiện 2 để cập nhật biến trạng thái và chuyển nó dưới dạng đạo cụ cho thành phần 2 6Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Tiếp theo, chúng ta cần điền vào biểu mẫu của mình khi nhấp vào nút Chỉnh sửa. Để làm điều này, hãy mở 4 và cập nhật như hình bên dưới 7Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Tiếp theo, chúng ta cần cập nhật chức năng 6 để bao gồm cập nhật thông tin chi tiết của người dùng bằng cách kiểm tra có điều kiện xem đó có phải là hành động cập nhật hay không. Tiếp theo, chúng ta cần gọi hàm 7 serverless và truyền vào các tham số cần thiết. Cuối cùng, cập nhật 9, khôi phục biểu mẫu về mặc định và đóng thành phần 2 8Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Phương thức hoàn chỉnh. tsx 9Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Xóa người dùng 1 bằng cách tạo hàm 06 như hình bên dưới 0Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đoạn mã trên thực hiện như sau
Ứng dụng hoàn chỉnh. tsx 1Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Cuối cùng, chúng ta có thể kiểm tra ứng dụng của mình bằng cách khởi động máy chủ phát triển và thực hiện các thao tác CRUD Phần kết luậnBài đăng này đã thảo luận về cách tạo cơ sở dữ liệu trên MongoDB, tạo và triển khai các chức năng không có máy chủ bằng MongoDB Realm và sử dụng các điểm cuối trong React. ứng dụng js Tôi có thể kết nối MongoDB với phản ứng không?Chúng tôi không thể kết nối React JS với MongoDB vì mọi thứ không hoạt động như thế này. Đầu tiên, chúng tôi tạo một ứng dụng phản ứng, sau đó để bảo trì phụ trợ, chúng tôi tạo API trong nút. js và thể hiện. js đang chạy ở một cổng khác và ứng dụng phản ứng của chúng tôi đang chạy ở một cổng khác.
Vương quốc trong MongoDB là gì?Realm là cơ sở dữ liệu hướng đối tượng được nhúng cho phép bạn xây dựng các ứng dụng luôn hoạt động theo thời gian thực . SDK của nó cũng cung cấp quyền truy cập vào Dịch vụ ứng dụng Atlas, một chương trình phụ trợ an toàn có thể đồng bộ hóa dữ liệu giữa các thiết bị, xác thực và quản lý người dùng cũng như chạy các chức năng JavaScript không có máy chủ.
MongoDB và lĩnh vực có giống nhau không?Realm là cơ sở dữ liệu phía máy khách nguồn mở chứa giải pháp đồng bộ hóa tích hợp sẵn cho MongoDB Atlas – Đồng bộ hóa thiết bị .
MongoDB Realm có miễn phí không?Vì vậy, mặc dù bạn có thể so sánh một số con số, điểm mấu chốt là nếu bạn đang tìm nạp dữ liệu Realm đã được đồng bộ hóa thì đó là dữ liệu cục bộ và (về cơ bản) $0 chi phí< . . |