AWS API Gateway作为S3上传的Serivce代理

use*_*827 3 http amazon-s3 amazon-web-services aws-api-gateway

我一直在阅读有关创建API的信息,该API可用于将对象直接上传到S3.我跟随亚马逊的指南,但收效甚微.

我目前收到以下错误:

{"message":"Missing Authentication Token"}
Run Code Online (Sandbox Code Playgroud)

我的API调用配置:

在此输入图像描述

ARN分配的角色不在图像中,但已设置并分配.

Lor*_*ara 5

"缺少身份验证令牌"错误可以解释为

  1. 为您的方法启用AWS_IAM身份验证并向其发出请求,而无需使用SigV4对其进行签名,或者
  2. 点击API中不存在的路径.

对于1,如果您使用生成的SDK,则会为您完成签名.

对于2,如果你正在制作原始的http请求,请确保你提出请求 /<stage>/s3/{key}

顺便说一句,s3的路径覆盖需要{bucket}/{key},而不仅仅是{key}.您可能需要创建一个以存储桶作为父级的二级层次结构,或者只是在路径覆盖中对存储桶名称进行硬编码(如果它始终相同).请参阅:http://docs.aws.amazon.com/apigateway/latest/developerguide/integrating-api-with-aws-services-s3.html