我是新手。
我有两个问题。
当我使用restlet时,我必须使用@ Post,@ Get。
示例:
@Post
public String registerUserInfo(StringRepresentation rep){
String str = rep.getText();
....
return "success";
}
但是,我在Google中看到了许多@Post示例。 (例如@Post(&#34; text / plain&#34;)@ Post(&#34; xml&#34;)@ Post(&#34; ........&#34;))< / p>
我想知道什么类型可能? 实际上,我花了很多时间找到任何指南和RestLet用户指南和示例。 但是,我找不到任何官方文件。 如果你知道,请告诉我。
另一个问题是使用Restlet。 我看了很多教程,说'#34;你应该分开方法..&#34;
例如,我制作了两种方法&#34; registerUserInfo&#34;和&#34; modifyUserInfo&#34;。 我尝试实现一个资源类&#34; UserResource&#34;以上两种方法。 但是,很多人说你分开了两个资源类。一个是registerUserResource,一个是modifyUserResource。
然后,在我的项目结束时,也许,我的项目可能充斥着太多的课程。 这是正确的吗?我不知道.... 请告诉我。
答案 0 :(得分:0)
虽然REST只是一个指导方针,但我认为你缺乏对这个概念的基本理解。
现在使用@POST / @PUT。如果您将JSON作为数据发送,请将Content-Type = application / json和Accept = application / json添加到请求标头中。 使用JsonRepresentation返回JSON
POST /用户注册
用户更新的PUT /用户
不要在表示名称中使用动词
答案 1 :(得分:0)
我认为您可以通过以下网址找到用户指南:http://restlet.com/learn/guide/2.2/ 我想你可以找到一些示例代码:http://restlet.com/learn/guide/2.2/introduction/first-steps/
这是关于注释的解释:http://restlet.com/learn/guide/2.2/core/resource/
关于应用程序和资源的设计,首先确定您需要哪些资源(快速回答以下问题:我想要公开哪个州?)
在您的情况下,由于您希望公开用户,我会看到两个资源:
在实施方面或多或少相应: - UsersServerResource
@Get
public List<User> list(){
[...]
}
@Post
public User add(User user) {
[...]
}
UserServerResource
@Get public User表示(){ [...] }
@Put 公共用户更新(用户用户){ [...] }
@Delete 公共用户更新(用户用户){ [...] }
您可以使用POJO(例如&#34; User&#34;如上面的示例代码中)以及支持序列化/反序列化的扩展(例如Jackson(cf http://restlet.com/learn/guide/2.2/core/services/converter))来实现您的资源。 我们鼓励您使用此功能,以便于开发资源。
如果要对客户端和服务器之间交换的表示进行精确控制,可以使用Representation类或StringRepresentation类。
随时询问更多详情。