本文介绍Custom Runtime中HTTP请求处理程序的结构特点、调用说明、使用限制、使用示例和常见问题。
背景信息
函数计算会将用户的请求,包括Method、Path、Body、Query和Headers以及函数计算生成的Common Header透传给HTTP Server。您可以平滑迁移已有的HTTP Web应用。
函数调用说明
当HTTP请求处理程序被调用时,和调用一个Web API方式一样,您可以直接使用cURL、Postman或浏览器等方式直接请求调用。如果您是通过浏览器访问HTTP触发器的,对应的函数被强制下载时,请参见解决方法。
| Header | 描述 | 
| (可选)x-fc-base-path | 当您尚未配置自定义域名时,x-fc-base-path的值是 | 
| (可选)x-fc-status | 当您的HTTP函数不是应用一键迁移,而是单纯新开发的Web API时,其性质和事件函数类似。 通过Headers中的 
 说明  在返回的HTTP响应中,建议您同时设置 | 
使用限制
- HTTP Request限制 - Request Headers不支持以x-fc-开头的自定义字段和以下自定义字段: - connection 
- keep-alive 
 
- 如果Request超过以下限制,会返回 - 400状态码和- InvalidArgument错误码。- Headers大小:Headers中的所有Key和Value的总大小不得超过8 KB。 
- Path大小:包括所有的Query Params,Path的总大小不得超过4 KB。 
- Body大小:同步调用请求的Body的总大小不得超过32 MB,异步调用请求的Body的总大小不得超过128 KB。 
 
 
- HTTP Response限制 - Response Headers不支持以x-fc-开头的自定义字段和以下自定义字段: - connection 
- content-length 
- date 
- keep-alive 
- server 
- content-disposition:attachment 说明- 从安全角度考虑,使用函数计算默认的aliyuncs.com域名,服务端会在Response Headers中强制添加content-disposition: attachment字段,此字段会使得返回结果在浏览器中以附件的方式下载。如果需要解除该限制,需设置自定义域名。更多信息,请参见配置自定义域名。 
 
- 如果Response超过以下限制,会返回 - 502状态码和- BadResponse错误码。- Headers大小:Headers中的所有Key和Value的总大小不得超过8 KB。 
 
 
- 其他使用说明 - 您可以通过绑定自定义域名,为HTTP函数映射不同的HTTP访问路径。详细信息,请参见配置自定义域名。您还可以使用API网关,后端服务类型选择HTTP服务,设置HTTP函数为后端服务地址,实现类似功能。详细信息,请参见使用函数计算作为API网关后端服务。 
多语言使用示例
使用Serverless Devs工具,您可以将您的应用一键迁移至函数计算。以下示例展示如何通过Serverless Devs工具快速部署和调用函数,您可以按需修改示例代码,实现二次开发。

