Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Kích hoạt cấu hình từ xa

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

Bạn có thể kích hoạt một chức năng để phản hồi các sự kiện Cấu hình từ xa của Firebase , bao gồm cả việc xuất bản phiên bản cấu hình mới hoặc khôi phục về phiên bản cũ hơn. Hướng dẫn này mô tả cách tạo chức năng nền Cấu hình từ xa thực hiện sự khác biệt của hai phiên bản mẫu.

Kích hoạt chức năng Cấu hình từ xa

Để kích hoạt chức năng Cấu hình từ xa, hãy sử dụng trình xử lý onUpdate được cung cấp bởi functions.remoteConfig . Đối tượng TemplateVersion do onUpdate trả về chứa các trường siêu dữ liệu chính cho bản cập nhật mẫu, chẳng hạn như số phiên bản và thời gian của bản cập nhật. Bạn cũng có thể truy xuất email cho người dùng đã thực hiện cập nhật, với tên và hình ảnh nếu có.

Dưới đây là một ví dụ về chức năng Cấu hình từ xa trả về sự khác biệt của từng phiên bản cập nhật và phiên bản mà nó thay thế. Hàm kiểm tra trường versionNumber của đối tượng mẫu và truy xuất phiên bản hiện tại (mới cập nhật) cùng với phiên bản thấp hơn một số:

exports.showConfigDiff = functions.remoteConfig.onUpdate(versionMetadata => {
  return admin.credential.applicationDefault().getAccessToken()
    .then(accessTokenObj => {
      return accessTokenObj.access_token;
    })
    .then(accessToken => {
      const currentVersion = versionMetadata.versionNumber;
      const templatePromises = [];
      templatePromises.push(getTemplate(currentVersion, accessToken));
      templatePromises.push(getTemplate(currentVersion - 1, accessToken));

      return Promise.all(templatePromises);
    })
    .then(results => {
      const currentTemplate = results[0];
      const previousTemplate = results[1];

      const diff = jsonDiff.diffString(previousTemplate, currentTemplate);

      functions.logger.log(diff);

      return null;
    }).catch(error => {
      functions.logger.error(error);
      return null;
    });
});

Mẫu này sử dụng mô-đun json-diffrequest-promise để tạo khác biệt và xây dựng yêu cầu để lấy đối tượng mẫu. Để biết mẫu kết hợp logic máy khách Cấu hình từ xa cũng như Nhắn tin qua đám mây Firebase, hãy xem Tuyên truyền cập nhật Cấu hình từ xa trong thời gian thực .