精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2014-10-27
最后修改:2014-10-30
一直的理解rest 就是将原来的参数设置在 url中
比如 原来 /app/book?id=123 rest /app/book/123/ 这种理解有什么错误? 而且感觉会不会被别人猜测出参数的意义,搞破坏? |
|
返回顶楼 | |
发表时间:2014-10-30
empireghost 写道 一直的理解rest 就是将原来的参数设置在 url中
比如 原来 /app/book?id=123 rest /app/book/123/ 这种理解有什么错误? 我的理解和你是一样的. 我在项目中也使用到rest,尤其是在定义一些接口和json对象的使用时(使用spring mvc),感觉就是把传统的?后面的参数直接放到了路径中去.这样在写接口时就不用把接收参数定义死了,在调用接口时只要注意路径中的顺序就行了,这样确实比传统的使用?+参数的方式简单,但是另一方面,也把顺序固定了. |
|
返回顶楼 | |
发表时间:2014-11-01
hae 写道 empireghost 写道 一直的理解rest 就是将原来的参数设置在 url中
比如 原来 /app/book?id=123 rest /app/book/123/ 这种理解有什么错误? 我的理解和你是一样的. 我在项目中也使用到rest,尤其是在定义一些接口和json对象的使用时(使用spring mvc),感觉就是把传统的?后面的参数直接放到了路径中去.这样在写接口时就不用把接收参数定义死了,在调用接口时只要注意路径中的顺序就行了,这样确实比传统的使用?+参数的方式简单,但是另一方面,也把顺序固定了. 兄弟们所指的是GET请求的查询方法,在这样的场景中,RESTful的资源和OO所暴露的接口表象上很类似,确实容易产生这样的疑问。RESTful也可以通过Query来公布接口,不仅是Path。但是,RESTful对资源定位的能力远不限于此种场景,因为RESTful是面向资源的,因此对资源定位的能力更强,有了jersey这样的底层框架,业务开发对query和path的解析就变得更简单、接口定义也就更灵活。 从统一接口角度说,RPC的写都是POST请求,而RESTful的写分为POST、PUT和DELETE。 RESTful就是要使用双方都明确知道URL的意义,清晰的URL无疑会提效。而安全上,无论你的URL是否清楚地解释了其含义,都是另一个维度、不得不做的事情。jersey提供了完整的请求-响应生命周期的过滤和拦截,从应用级可以很好地细粒度地控制资源的操作;JavaEE生态圈也提供了相关的容器级安全控制。但这和RESTful本身应该是两个角度,架构师会将启用jersey框架归类为易用性、可扩展性,而安全是可用性的一部分。 |
|
返回顶楼 | |
发表时间:2014-11-01
最后修改:2014-11-01
最近的项目也在用REST,但是关于认证这一块还有些疑问。
一般情况是我们第一次通过访问授权url,传入认证信息得到Token; 第二次发送请求,如增删改查,参数中加入Token。 现在的问题是这个Token的获取要如何实现才是安全的? 生成Token和验证Token作为一个服务独立存在? 加入Token失效时间? 请老师帮忙解惑,谢谢! |
|
返回顶楼 | |
发表时间:2014-11-01
CoderDream 写道 最近的项目也在用REST,但是关于认证这一块还有些疑问。
一般情况是我们第一次通过访问授权url,传入认证信息得到Token; 第二次发送请求,如增删改查,参数中加入Token。 现在的问题是这个Token的获取要如何实现才是安全的? 生成Token和验证Token作为一个服务独立存在? 加入Token失效时间? 请老师帮忙解惑,谢谢! 这个需求是RESTful应用的常见问题,一般JAVA EE的容器级安全通过加密cookie或者session实现。如果是token,典型的是OAuth协议,那么这个token生成和验证已经不在RESTful应用服务器内了。时效可以放在加密cookie中。 安全这块,我并不专业,仅供参考,共同学习哦。 |
|
返回顶楼 | |
发表时间:2014-11-02
简单的业务可以简单区分CRUD,但是复杂的业务,比如一个请求获取10条用户照片,推荐10条新闻,获取用户档案,这种又如何识别资源命名URL呢?
|
|
返回顶楼 | |
发表时间:2014-11-02
1、以前只知道Http方法有GET和POST,看了rest才知道总共有六种,韩工是否有关于Http方法详细的学习资料,同时个人也建议可以将Http方法作为扩展知识放入书中。
2、前段时间朋友公司webservice选型也选择了jersey(虽然他们MVC框架采用了spring mvc3),我想请教,spring mvc rest除了未遵循JAX-RS规范以外,还有什么原因不及jersey? 3、另外还有一个好奇的地方,假如资源类抛出异常,发送rest请求的客户端应该怎么处理。 rest小白一个,多多指教! |
|
返回顶楼 | |
发表时间:2014-11-03
REST架构对于资源的四种行为:Create(创建)、Read(读取)、Update(更新)和Delete(删除)正好对应HTTP协议提供的GET、POST、PUT和DELETE方法. |
|
返回顶楼 | |
发表时间:2014-11-04
这段时间比较忙,一直没有上来,还好今天还处于活动期。我对RESTful还处于一知半解,只是之前在网上查了些资料,粗知一二,正好借此机会向大神请教:
(1)RESTful有6种API,我想知道的是对于常规操作,增删改查四种就够了,为何要设计6种? (2)Jersey帮开发者做了哪些事情,可否对其主体要素作下介绍?在试读迷你书中有看到还有CXF、RESTEasy等等,它们各有什么优缺点?大神最终选择Jersey是出于哪些考虑? (3)RESTful与Web Service不是对立的,那么什么情况下用RESTful好,什么情况下用Web Service好,什么情况下两者可以通用? (4)试读里有提到,现在是JAX-RS 2.X,从来没有学过这方面的内容,是否学习时可以直接从新版本入手,还是对以前版本也要一定程度的了解会更好?顺便也想知道,现有的版本是对以前版本的扩充还是有修改? (5)试读中有提到,JAX-RS 规范并不等于REST风格本身,它们有着不同的覆盖范围。对此我不是特别理解,JAX-RS 不就是REST的JAVA实现规范吗,它们之间为何会有不同的覆盖范围? 在这方面完全是小白,期待得到本书深入学习,谢谢! |
|
返回顶楼 | |
发表时间:2014-11-06
看来作者比较忙啊,都没有时间来回答问题啊,很想知道上面几位大哥所提问题的解答
|
|
返回顶楼 | |