注释类型 FormBody
@Documented
@ParamLifeCycle(FormBodyLifeCycle.class)
@Retention(RUNTIME)
@Target({PARAMETER,METHOD,ANNOTATION_TYPE})
public @interface FormBody
Request Form Body
(2) 对象模式:
(3) Map模式:
(4) 字符串模式:
该注解绑定只能绑定方法的参数。被该注解绑定的参数将被解析为表单字符串,并作为整个请求体或请求体的一部分随请求发送到服务端。
同时,请求的 Content-Type 自动被设置为 application/x-www-form-urlencoded
该注解有一下几种模式:
(1) 键值对模式:
void send(@FormBody("username") String username, @FormBody("password") String password);
此模式的@FormBody注解可以修饰一个或多个参数,每个参数仅作为一个键值对。这些键值对最终会被合并成一个表单对象。(2) 对象模式:
void send(@FormBody UserInfo userInfo);
此模式的@FormBody注解可以修饰一个或多个自定义对象,但不能设置名称(value属性)以表明它不是一个键值对。被修饰的参数对象会被拆成一个个字段(这个对象的类中所有getter方法对应的字段),
所有这些字段将像键值对一样被合并成一个表单对象。(3) Map模式:
void send(@FormBody Map paramMap);
此模式的@FormBody注解可以修饰一个或多个Map对象,但不能设置名称(value属性)以表明它不是一个键值对。被修饰的参数对象会被拆成一个个键值对(Map中的所有有值的键值对),
所有这些键值对被合并成一个表单对象。(4) 字符串模式:
void send(@FormBody String body);
此模式的@FormBody注解可以修饰一个或多个String类型参数,但不能设置名称(value属性)以表明它不是一个键值对。
同时参数值也必须是一个合法的表单字符串。
被修饰的字符串参数将直接以文本形式添加到请求体中。- 从以下版本开始:
- 1.5.0-BETA9
- 作者:
- gongjun
-
可选元素概要
可选元素
-
元素详细资料
-
value
键值对名称(可选参数)[同name]有键值对名称时(有value值时),被该注解修饰的参数将被作为一个键值对合并到请求体中。
没有键值对名称时(没有设value值时),被该注解修饰的参数将被作为一个对象,根据对象的属性拆成一个个键值对,然后合并到请求体中
- 返回:
- 键值对名称
- 默认值:
- ""
-
name
键值对名称(可选参数)[同value]有键值对名称时(有value值时),被该注解修饰的参数将被作为一个键值对合并到请求体中。
没有键值对名称时(没有设value值时),被该注解修饰的参数将被作为一个对象,根据对象的属性拆成一个个键值对,然后合并到请求体中
- 返回:
- 键值对名称
- 默认值:
- ""
-
filter
String filterThe filters will do some processing for the query value before sending request.- 返回:
- filter names
- 默认值:
- ""
-
defaultValue
String defaultValue默认值- 返回:
- 默认值
- 默认值:
- ""
-