You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Postman自动化实现S3预签名URL生成与文件上传流程

Postman 自动化执行S3预签名上传两步接口流程实现方法

步骤1:配置获取预签名URL的POST请求

  • 先按接口文档要求填好POST请求的地址、鉴权信息、请求头、请求参数,确保单独发送该请求可以正常拿到包含S3 pre-signed URL的响应。
  • 打开该请求的Tests标签页,写入脚本将接口返回的预签名URL自动存入Postman环境变量,供后续PUT请求调用:
// 解析POST接口返回的JSON响应,可根据你自己接口的实际返回结构调整取值路径
const responseData = pm.response.json();
// 示例:如果返回结构为 { code:0, data: { uploadUrl: "预签名地址" } },就按如下方式取值
const presignedUrl = responseData.data.uploadUrl;
// 将取到的预签名URL存入环境变量,变量名可自定义
pm.environment.set("s3_upload_url", presignedUrl);

// 如果接口同时返回了上传时要求携带的固定Content-Type、自定义x-amz头,也可以一并存入变量
// pm.environment.set("s3_upload_content_type", responseData.data.fileContentType);

步骤2:配置上传文件的PUT请求

  • 新建PUT请求,请求地址栏直接填写变量引用{{s3_upload_url}},不需要写死固定地址。
  • 切换到Headers标签页:如果第一步接口返回了上传必须携带的指定请求头(比如固定Content-Type),对应填入即可,值可以引用之前存的变量;不要额外添加多余的请求头(比如自定义Authorization、Cookie等),否则会触发S3签名校验失败。
  • 切换到Body标签页,选择binary类型,点击「选择文件」选中你要上传的目标文档即可,不要随意切换成form-data等其他格式,除非生成预签名URL时指定的是表单上传模式。

步骤3:串联流程实现自动执行

  • 在Postman侧边栏新建一个集合(Collection),把刚才配置好的POST请求、PUT请求按执行先后顺序拖入集合中,必须保证POST请求在前、PUT请求在后。
  • 点击集合右侧的更多操作按钮,选择Run collection,在弹出的集合运行面板中确认请求顺序无误后,点击运行即可自动完成「获取预签名URL-上传文件」的全流程,不需要手动复制粘贴URL。

常见问题提示

  • 如果PUT请求返回403 SignatureDoesNotMatch错误,优先检查是否携带了签名范围外的多余请求头、是否额外加了未被签名包含的查询参数、上传的Content-Type和生成签名时指定的类型是否一致。
  • 预签名URL默认有有效期,要保证两步执行的间隔在URL有效期范围内。

内容的提问来源于stack exchange,提问作者Himani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 12:21:28