Post Tavern-无法使用aws预签名url发布文件

Post Tavern-无法使用aws预签名url发布文件,post,multipartform-data,pre-signed-url,tavern,Post,Multipartform Data,Pre Signed Url,Tavern,我是Tavern的新手,正在为AWS API网关应用程序实施测试 案例描述和正常方法 在我的例子中,我使用预先签名的URL直接将文件上传到S3 bucket。预签名URL由以下属性组成: url='1〕https://.s3.amazonaws.com/' 领域: key=.zip x-amz-算法=*** x-amz-credential=*** x-amz-date=*** x-amz-security-token=*** 策略=*** x-amz-signature=*** 在正常的cU

我是Tavern的新手,正在为AWS API网关应用程序实施测试

案例描述和正常方法 在我的例子中,我使用预先签名的URL直接将文件上传到S3 bucket。预签名URL由以下属性组成:

url='1〕https://.s3.amazonaws.com/' 领域: key=.zip x-amz-算法=*** x-amz-credential=*** x-amz-date=*** x-amz-security-token=*** 策略=*** x-amz-signature=*** 在正常的cURL请求中,这将按如下方式使用:

stages:
  - name: UPLOAD A FILE TO S3
    request:
      method: POST
      url: "https:/<bucket>.s3.amazonaws.com/"
      files: 
          key: target.zip 
          x-amz-algorithm: ***
          x-amz-credential: *** 
          x-amz-date: ***
          x-amz-security-token: *** 
          policy: *** 
          x-amz-signature: ***
          file: '@target.zip'
    response:
      status_code: 200
旋度-v\ -F键=.zip\ -F x-amz-算法=***\ -F x-amz-credential=***\ -F x-amz-date=***\ -F x-amz-security-token=***\ -F政策=***\ -F x-amz-signature=***\ -F file=@.zip\ 'https://.s3.amazonaws.com/' 实施测试 如您所见,有必要使用cURL的-F标志,它形成一个多部分/表单数据POST请求

在Tavern方法中,正如我所读到的,-F相当于文件,因此如下所示:

stages:
  - name: UPLOAD A FILE TO S3
    request:
      method: POST
      url: "https:/<bucket>.s3.amazonaws.com/"
      files: 
          key: target.zip 
          x-amz-algorithm: ***
          x-amz-credential: *** 
          x-amz-date: ***
          x-amz-security-token: *** 
          policy: *** 
          x-amz-signature: ***
          file: '@target.zip'
    response:
      status_code: 200
错误 但它失败了,错误是:

Error: <value of x-amz-algorithm> file not found
因此它将字段视为文件,因此失败

是否有可能在Tavern中实现此案例,因此我的实现在某个地方是错误的,或者这在Tavern中还不可能实现

亲切问候,

Rshad

试试这个:

stages:
  - name: UPLOAD A FILE TO S3
    request:
      method: POST
      url: "https:/<bucket>.s3.amazonaws.com/"
      data: 
          key: target.zip 
          x-amz-algorithm: ***
          x-amz-credential: *** 
          x-amz-date: ***
          x-amz-security-token: *** 
          policy: *** 
          x-amz-signature: ***
      files:
          file: "target.zip"
    response:
      status_code: 200

嗨,我的朋友@Ashaman!我发誓我测试过这个解决方案,但今天早上它不起作用,现在也不起作用。但我当时认为,可能是预签名的URL不再有效,因为它在3小时后过期,然后尝试使用一个新的预签名的URL它确实有效。谢谢!