如何使用Node.JS读取要从GCS存储桶中删除的过期期限?

时间:2019-03-07 23:26:25

标签: node.js google-cloud-platform google-cloud-storage

我已将GCS存储桶配置为在20天后自动删除存储在其中的对象(通过GCP网络用户界面进行了此操作)。当我在Node.JS中引用存储桶对象时,如何获取配置为老化的天数?

GCS生命周期参考为here,但未提供示例。

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用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.
     *   }

答案 1 :(得分:0)

要获取配置对象进行老化的天数,即您在控制台中为存储桶设置的值,必须从对存储桶的引用(而不是存储桶中的对象)获得该值。您可以使用bucket.getMetadata()方法。此方法将调用API,您可以尝试here

如果您想知道该存储桶上的某个对象何时死亡,则可以使用方法object.getMetadata()获取该对象的元数据,检查创建日期并使用为该对象配置的值进行简单的数学运算你的水桶。