Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon s3 使用AWS API网关返回默认值_Amazon S3_Aws Api Gateway - Fatal编程技术网

Amazon s3 使用AWS API网关返回默认值

Amazon s3 使用AWS API网关返回默认值,amazon-s3,aws-api-gateway,Amazon S3,Aws Api Gateway,我需要提供某种由S3 bucket支持的RESTAPI。要求很简单:给定某个键,它应该返回名为该键的文件的内容。如果在bucket中找不到这样的文件,则返回默认内容。在这两种情况下,响应状态代码都应该是200,因为客户端不应该关心结果来自哪里 这个需求非常简单,我试图在不编写任何代码的情况下完成它。因此,我尝试将AmazonAPI网关创建的API放在S3存储桶的前面。但即使在“集成响应”部分,您可以将“HTTP状态正则表达式”映射到“方法响应状态”,显然相同的“方法响应状态”不能出现两次。因此,

我需要提供某种由S3 bucket支持的RESTAPI。要求很简单:给定某个键,它应该返回名为该键的文件的内容。如果在bucket中找不到这样的文件,则返回默认内容。在这两种情况下,响应状态代码都应该是200,因为客户端不应该关心结果来自哪里

这个需求非常简单,我试图在不编写任何代码的情况下完成它。因此,我尝试将AmazonAPI网关创建的API放在S3存储桶的前面。但即使在“集成响应”部分,您可以将“HTTP状态正则表达式”映射到“方法响应状态”,显然相同的“方法响应状态”不能出现两次。因此,我不能使用自定义body映射模板将404响应映射到200,而将其默认映射到200


是否可以仅使用API网关执行此操作

如果唯一限制您的是可用响应的数量,那么您可以使用203(从源站转发内容)作为另一个成功响应。或者,您可以在API网关后面编写一个简单的lambda函数来设计响应

如果唯一限制您的是可用响应的数量,那么您可以使用203(从源站转发内容)作为另一个成功响应。或者,您可以在API网关后面编写一个简单的lambda函数来设计响应