Как прочитать период ожидания для удаления из корзины GCS с помощью Node.JS ?

#node.js #google-cloud-platform #google-cloud-storage

#node.js #google-cloud-platform #google-облачное хранилище

Вопрос:

Я настроил корзину GCS на автоматическое удаление объектов, хранящихся в ней, через 20 дней (сделал это через веб-интерфейс GCP). Когда я ссылаюсь на объект корзины в Node.JS, как я могу узнать количество дней, в течение которых она настроена для устаревания?

Ссылка на жизненный цикл GCS находится здесь, но не содержит примеров.

Ответ №1:

Чтобы получить количество дней, в течение которых объект был настроен для устаревания, то есть значение, которое вы установили для своей корзины в консоли, вы должны получить его из ссылки на корзину, а не на объект внутри корзины. Вы можете использовать bucket.getMetadata() метод. Этот метод вызовет API, который вы можете попробовать здесь.

Если вы хотите знать, когда объект в этой корзине умрет, вы можете просто получить метаданные этого объекта с помощью метода object.getMetadata() , проверить дату создания и выполнить простые вычисления со значением, которое вы настроили для своей корзины.

Ответ №2:

Вы пробовали работать с addLifecycleRule методом и настраивать политики корзины?

 @example
     * const {Storage} = require('@google-cloud/storage');
     * const storage = new Storage();
     * const bucket = storage.bucket('bucket-name');
     *
     * //-
     * // Automatically have an object deleted from this bucket
     * // of age.
     * //-
     * bucket.addLifecycleRule({
     *   action: 'delete',
     *   condition: {
     *     age: 20 // Specified in days.
     *   }
     * }, function(err, apiResponse) {
     *   if (err) {
     *     // Error handling omitted.
     *   }