line_cheng的专栏

爱生活,爱思考。----.NET 开发 应届毕业生求职中

RestEasy 用户指南---第11章 @FormParam

当你以application/x-www-form-urlencoded格式去编码,并将这些内容放在请求的实体(request body)中,例如html的form表单。你可以将自主定制的参数传入到方法的参数中。

<form method="POST" action="/resources/service">
First name: 
<input type="text" name="firstname">
<br>
Last name: 
<input type="text" name="lastname">
</form>

如果你是使用form的表单提交,服务端将会是下边的形式

@Path("/")
public class NameRegistry {

   @Path("/resources/service")
   @POST
   public void addName(@FormParam("firstname") String first, @FormParam("lastname") String last) {...}

当FormParam以默认的application/x-www-form-urlencoded形式提交后在服务端不能反序列化MultivaluedMap<String,String>,这是非法的。

@Path("/")
public class NameRegistry {

   @Path("/resources/service")
   @POST
   @Consumes("application/x-www-form-urlencoded")
   public void addName(@FormParam("firstname") String first, MultivaluedMap<String, String> form) {...}

第11章完

阅读更多
个人分类: 翻译
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭