
# 使用Java开发HTTP函数
本章节介绍使用Java运行时开发HTTP函数，更多HTTP详情，请参见[创建HTTP函数](https://support.huaweicloud.com/usermanual-functiongraph/functiongraph_01_1441.html)。
#### 约束与限制
- HTTP函数只能绑定APIG/APIC触发器，根据函数和APIG/APIC之间的转发协议。 **函数的返回合法的http响应报文中必须包含body(String)、statusCode(int)、headers(Map)和isBase64Encoded(boolean)，HTTP函数会默认对返回结果做Base64编码，isBase64Encoded默认为true，其它框架同理。** **相关约束条件请参考** **[Base64解码和返回结构体的说明](https://support.huaweicloud.com/devg-functiongraph/functiongraph_02_0102.html#functiongraph_02_0102__li176282148442)。**
  
- HTTP函数默认开放端口为8000。
- Context类中提供了许多上下文方法供用户使用，其声明和功能请参见[表21](https://support.huaweicloud.com/devg-functiongraph/functiongraph_02_0430.html#functiongraph_02_0430__table4315136814851)。
 
#### 使用Java开发HTTP函数示例
**示例概述：**
用户通常可以使用[SpringInitializr](https://start.spring.io/)或者IntelliJ IDEA新建等多种方式构建SpringBoot，以Spring.io的<https://spring.io/guides/gs/rest-service/>项目为例，使用HTTP函数的方式部署到FunctionGraph上。
**操作步骤：**
本示例指导使用SpringBoot开发应用的用户，使用已有SpringBoot项目构建HTTP函数，将业务部署到FunctionGraph。
具体操作步骤请参见[使用已有SpringBoot项目构建HTTP函数](https://support.huaweicloud.com/bestpractice-functiongraph/functiongraph_05_1035.html)。
