【问题标题】:How to generate a url that will expire after 30 minutes?如何生成 30 分钟后过期的 url?
【发布时间】:2021-10-11 01:47:38
【问题描述】:

我正在做一个项目,我必须向用户提供一个 30 分钟后过期的 URL。我有一个用户的 uuid,这个 uuid 对每个用户都是唯一的。当用户点击url时,它应该点击google cloud中的云功能并从firestore中检索数据,这个检索到的数据是用户信息,应该显示这个信息。

如果在 NodeJS 中完成会很有帮助。

【问题讨论】:

    标签: node.js url google-cloud-platform google-cloud-firestore google-cloud-functions


    【解决方案1】:

    自动过期的解决方案:调用云函数时:

    1. 从 Firestore 中获取要公开的数据
    2. 将数据写入云函数环境中的文件
    3. 将文件上传到 Google Cloud Storage 存储桶(GCS 对象)
    4. 创建签名 URL 以下载对象,持续时间为 30 分钟
    5. 返回签名的 url 作为云函数的响应

    这里有一个 example in 节点用于创建签名 URL,还有一个 example 用于将文件上传到 Google Cloud Storage

    【讨论】:

      【解决方案2】:

      第 1 步: 将名为 expiresAt 的属性存储在您的 Firestore Database 中。该属性将包含一个日期字符串,即Current Time + 30 Minutes

      第 2 步:检查来自 node.js 后端服务器 if the current Time is less than expiresAt or not 的 URL。如果为真,则发送正确的响应,否则,向客户端发送错误消息。

      【讨论】:

        猜你喜欢
        • 2010-10-05
        • 1970-01-01
        • 2015-06-21
        • 1970-01-01
        • 2010-12-22
        • 2014-04-17
        相关资源
        最近更新 更多