服务实现中的控制器与模型详解
1. 隐藏细节与基本响应逻辑
在服务实现中有一个隐藏细节, if_found 方法在用户尝试 GET 或 DELETE 一个不存在的用户时,会发送 404(“Not Found”)响应码,否则响应码为 200(“OK”)。并且对于用户资源,没有实现条件式 HTTP GET,因为认为可能节省的带宽不足以抵消增加的复杂性。
2. 书签控制器(BookmarksController)
2.1 过滤器
书签控制器是应用中的另一个主要控制器,它用于展示特定用户的书签列表和单个书签。这里的过滤器很有意思:
- must_specify_user 过滤器确保尝试查看不存在用户的书签时会收到 404 响应。
- must_authenticate 过滤器与用户控制器中的作用相同,防止未经认证的请求访问需要认证的 Rails 动作。
- fix_params 过滤器用于确保传入的书签表示的一致性。
以下是 BookmarksController 的代码:
class BookmarksController < ApplicationController
before_filter :must_specify_user
before_filter :fix_params
before_filter :must_authenticate, :only =
超级会员免费看
订阅专栏 解锁全文
3846

被折叠的 条评论
为什么被折叠?



