如何使用表单参数创建/构建REST URI

时间:2013-06-19 06:58:17

标签: rest jersey uri

好吧所以我创建了restful webservice.now如何为用户“abc”创建路径。
像这样的东西

http://stackoverflow.com/user/abc

以下是我获取用户输入的表格

@POST
    @Produces(MediaType.TEXT_HTML)
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
    public void newUser(
            @FormParam("uname") String uname,
            @FormParam("password") String password,
            @Context HttpServletResponse servletResponse
    ) throws IOException {
        User u = new User(uname,password);
        User.userdata.put(uname,password);
    }

如果用户将uname命名为“abc”

,如何从表单参数中创建类似这样的URI
http://mysite/user/abc  

1 个答案:

答案 0 :(得分:0)

使用@Path@PathParam注释:

@Path("/user/{uname}")
@PUT
@Consumes("text/plain")
public void putUser(@PathParam("uname") String uname, String password) {
  // ..
}

如果PUT/user/joe的正文为s3cret,则uname将为joepassword将为s3cret }}

我使用PUT因为您要使用的URL意味着用户名设置了用户名。 /user是所有用户的收集资源。

修改:由于此方法会通过创建新用户来更改服务器状态,因此必须使用PUTPOSTGET 不得更改服务器状态。