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

如何通过HTTPS请求替代AWS CLI命令实现与AWS服务的交互

实现AWS CLI aws devicefarm list-uploads 等效HTTPS请求的方案

基础请求配置

AWS所有公开服务API都遵循统一的调用规范,Device Farm的list-uploads接口基础配置如下:

  • 请求方法:POST
  • 请求域名:对应你所用AWS区域的Device Farm服务节点,如美西2区为devicefarm.us-west-2.amazonaws.com
  • 请求路径:固定为/
  • 必传请求头:
    • Content-Type: application/x-amz-json-1.1
    • X-Amz-Target: DeviceFarm_20150623.ListUploads

请求体参数

你给出的CLI命令对应请求参数直接按JSON格式拼接即可,示例如下:

{
  "arn": "arn-123-nra",
  "type": "FILE"
}

签名规则说明

所有AWS API请求必须使用SigV4签名算法生成签名,签名需要使用你的AWS访问密钥(Access Key ID、Secret Access Key)计算,核心流程如下:

  1. 拼接规范请求串,包含请求方法、URI、查询参数、请求头列表、待签名请求头、请求体SHA256哈希值
  2. 生成待签名字符串,包含签名算法标识、UTC时间戳、凭证范围、规范请求串的SHA256哈希值
  3. 使用Secret Access Key按时间、区域、服务维度派生签名密钥,计算得到最终签名
  4. 将签名信息拼接为Authorization请求头,随请求一同发送
    如果是开发Mac应用,不需要自行实现签名逻辑,直接使用AWS官方提供的苹果生态SDK即可,SDK会自动处理签名、请求拼接、异常重试等所有底层逻辑。

完整请求结构示例(仅演示格式,签名值需自行计算替换)

POST / HTTP/1.1
Host: devicefarm.us-west-2.amazonaws.com
Content-Type: application/x-amz-json-1.1
X-Amz-Target: DeviceFarm_20150623.ListUploads
X-Amz-Date: 20240520T130500Z
Authorization: AWS4-HMAC-SHA256 Credential=AKIAXXXXXX/20240520/us-west-2/devicefarm/aws4_request, SignedHeaders=content-type;host;x-amz-date;x-amz-target, Signature=abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890

{"arn": "arn-123-nra", "type": "FILE"}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 17:48:05