Bài viết


Cách truy cập Realtime Database trong Firebase thông qua REST API

Ngày đăng: 23/05/2024

Firebase là một nền tảng phát triển ứng dụng di động và web được phát triển bởi Google. Nó cung cấp một loạt các dịch vụ và công cụ để phát triển các ứng dụng web và app nhanh chóng.


Có 2 cách để lưu dữ liệu trong firebase là sử dụng Realtime DatabaseFirestore:

  • Realtime Database phù hợp với dự án nhỏ, cấu trúc dữ liệu đơn giản, không có truy vấn phức tạp (ví dụ như sử dụng khoá ngoại để liên kết bảng,...), chỉ cần 1 link API để thực hiện CRUD data.
  • Firestore thường dùng cho dự án trung bình và lớn , hỗ trợ tuỳ biến API, thực hiện các truy vấn phức tạp, khả năng mở rộng tốt hơn.


Trong bài này chúng ta sẽ tìm hiểu cách tương tác với dữ liệu Realtime Database thông qua REST API.


Đầu tiên, đăng nhập vào Firebase và tạo một project, vào project vừa tạo, tìm đến mục Realtime Database rồi khởi tạo 1 API. Ở đây mình sẽ tạo api là danh sách các user.

Vì database trong trong firebase là kiểu cơ sở dữ liệu NoSQL lưu trữ dưới dạng JSON nên sẽ bao gồm các cặp key:value


{
"user":
{
"id_1": {
"name": "tên_1",
"age": 29,
"address": "Quảng nam"
},
"id_2": {
"name": "tên_2",
"age": 30,
"address": "Đà nẵng"
} ,
{...}
}
}


Sau khi đã tạo xong 1 API user chúng ta sẽ connect từ app sử dụng axios


1.Get danh sách User sử dụng method GET


axios.get(`https://url_api/user.json`) 
.then(response => {
// Xử lý dữ liệu trả về khi yêu cầu thành công
console.log('Data:', response.data);
})
.catch(error => {
// Xử lý lỗi khi yêu cầu thất bại
console.error('Error:', error);
});


  • Với url_api là đường dẫn đã tạo ở firebase
  • user.json là api để lấy danh sách user

Lưu ý: Cuối mỗi API phải thêm .json để không bị lỗi CORS

Kết qủa ta log ra được tất cả user theo định dạng JSON.


2.Tạo mới một User sử dụng method POST


axios.post(`https://url_api/user.json`, {
name: "Bqsoft",
address: "Đà nẵng"
})
.then(response => {
// Xử lý dữ liệu trả về khi yêu cầu thành công
console.log('Data:', response.data);
})
.catch(error => {
// Xử lý lỗi khi yêu cầu thất bại
console.error('Error:', error);
});


  • Tham số thứ 2 của method POST là đối tượng user mà chúng ta muốn thêm mới. Lúc này firebase sẽ tự động tạo một key và gán user object trên vào


3.Cập nhật 1 User sử dụng method PUT


axios.put(`https://url_api/user/key_của_user.json`, {
name: "Bqsoft update",
address: "Đà nẵng update"
})
.then(response => {
// Xử lý dữ liệu trả về khi yêu cầu thành công
console.log('Data:', response.data);
})
.catch(error => {
// Xử lý lỗi khi yêu cầu thất bại
console.error('Error:', error);
});


  • key_của_user thường là uuid do firebbase khởi tạo khi ta thêm mới user đó


4.Xoá 1 User sử dụng method DELETE


axios.delete(`https://url_api/user/key_của_user.json`) 
.then(response => {
// Xử lý dữ liệu trả về khi yêu cầu thành công
console.log('Data:', response.data);
})
.catch(error => {
// Xử lý lỗi khi yêu cầu thất bại
console.error('Error:', error);
});


Như vậy, chúng ta đã nắm được cách tương tác cơ bản với database của firebase thông qua REST API sử dụng thư viện axios. Ở những bài tiếp theo sẽ đi sâu hơn để làm chủ hoàn toàn firebase.


Liên hệ ngay tại đây với chúng tôi để được tư vấn nhanh nhất hoặc liên hệ:

Hotline: 0705.550.553

Email: bqsoftvn@gmail.com

Fanpage: https://www.facebook.com/bqsoftvn


Hân hạnh được hợp tác!

icon zalo
icon-mess