如何配置AWS API Gateway以处理video/mp4的206部分响应?
AWS API Gateway配置206部分响应的方法
要让API Gateway支持video/mp4类型文件的206部分响应,需完成以下配置变更:
1. 添加206状态码的方法响应
- 登录API Gateway控制台,定位到目标API和对应的GET方法
- 切换至「方法响应」标签,点击「添加响应」,输入状态码
206 - 为206响应添加3个关键HTTP头:
Content-Type:值设为video/mp4(或保留动态映射,根据后端返回自动填充)Content-Range:用于返回部分内容的范围标识,必须添加Accept-Ranges:值设为bytes,告知客户端当前接口支持字节范围请求
2. 配置206状态码的集成响应
- 切换到「集成响应」标签,点击「添加集成响应」
- 选择匹配后端EC2返回的206状态码(若后端已能正确返回206,直接映射该状态码;若后端返回200但需API Gateway转换,可通过正则匹配响应头或状态码规则映射)
- 配置响应头映射:
- 将后端返回的
Content-Range头映射到方法响应的对应字段 - 确保
Content-Type头正确传递为video/mp4 - 开启「传递来自集成的头」选项,保证范围相关的请求头和响应头能正常透传
- 将后端返回的
3. 启用二进制媒体类型与请求头传递
- 在API的「设置」页面,找到「二进制媒体类型」,添加
video/mp4,确保API Gateway能正确处理二进制视频内容 - 进入方法的「集成请求」标签,添加
Range到「HTTP请求头」映射列表,将客户端发送的Range请求头直接传递给EC2后端,让后端能识别范围请求
4. 验证后端服务兼容性
- 确保EC2上的业务服务能够正确处理
Range请求头,比如收到Range: bytes=0-1023时,返回对应片段的视频内容,并携带206状态码、Content-Range和对应片段长度的Content-Length头信息
内容的提问来源于stack exchange,提问作者Suvid Sahay
相关产品推荐
相关产品推荐

