Asynchronous 是否可以在它之前获取S3文件url';上传了什么?

Asynchronous 是否可以在它之前获取S3文件url';上传了什么?,asynchronous,amazon-web-services,amazon-ec2,amazon-s3,Asynchronous,Amazon Web Services,Amazon Ec2,Amazon S3,所以,这里是一个场景。我有一个网站,允许您对文件执行某些操作,这些操作需要几秒钟的时间。我不想让客户端在服务器返回响应之前等待那么久,所以他们现在的方式就是这样 用户在其浏览器(客户端)中执行操作 客户端向服务器发送带有参数的POST请求 服务器将操作添加到作业队列,并将结果的预期url发回 客户端ping服务器直到文件可用,然后为其提供服务 目前,这些文件存储在我的ec2服务器中,但我想将其移动到S3。我想知道这种流动是否可能 服务器知道文件将被保存什么以及保存到什么地方,所以S3也是这样吗?

所以,这里是一个场景。我有一个网站,允许您对文件执行某些操作,这些操作需要几秒钟的时间。我不想让客户端在服务器返回响应之前等待那么久,所以他们现在的方式就是这样

  • 用户在其浏览器(客户端)中执行操作
  • 客户端向服务器发送带有参数的POST请求
  • 服务器将操作添加到作业队列,并将结果的预期url发回
  • 客户端ping服务器直到文件可用,然后为其提供服务
  • 目前,这些文件存储在我的ec2服务器中,但我想将其移动到S3。我想知道这种流动是否可能


    服务器知道文件将被保存什么以及保存到什么地方,所以S3也是这样吗?如果我事先知道所有信息(bucket、filename等),是否有办法知道文件URL

    所有S3对象URL都遵循模式,因此很容易提前知道URL是什么

    如果bucket名称符合DNS(除美国标准外的所有地区都需要),则它将如下所示:

    <bucket>.s3.amazonaws.com/<object-path>
    
    s3.amazonaws.com/<bucket>/<object-path>
    
    因此,如果您的bucket名称不符合DNS(例如,
    示例_123
    ),并且您的文件是
    abc/123/file.txt
    ,那么您的对象URL将是:

    example.s3.amazonaws.com/abc/123/file.txt
    
    s3.amazonaws.com/EXAMPLE_123/abc/123/file.txt
    
    下面是一个来自官方PHPSDK的DNS兼容逻辑示例