Ruby on Rails 2.0的新特性介绍 - 编程入门网
件独立的修改。
我们还添加了一些选项让,仅仅几行代码,就能够让浏览器去访问多台服务器上面的资源。如果你添 加如下设置:ActionController::Base.asset_host = “assets%d.example.com”,那么Rails框架就会 自动的把静态资源的请求分发到多台物理服务器上面去,例如分发到assets1.example, assets2.example.com, assets3.example.com等等。这样浏览器可以同时向多台服务器下载资源,增加你 的应用的访问速度。 Action Pack: Security 能够很简单的创建出来安全的应用总是一件令人愉快的事情,而Rails2.0提供了大量先进的功能来达 到这一点。非常重要的是我们现在提供了一种内建的机制来处理CRSF攻击。我们在所有的HTML表单和AJAX 请求当中包含了一个特殊的token,而请求来自于其他的应用的时候,你就可以检测到。所有的这些选项 在新创建的Rails2.0项目当中默认就是打开的状态,对于你升级到Rails2.0的项目要打开这一个选项也很 容易,使用ActionController::Base.protect_from_forgery就可以了,详细的说明请看: ActionController::RequestForgeryProtection。 对于允许用户在应用当中提交HTML代码的情况,防止XSS攻击现在也变得更加简单了。 TextHelper#sanitize方法从过滤黑名单变成了验证白名单。如果你已经使用了sanitize方法,你就会自 动获得更好的保护。当然你也可以自行调整默认允许的HTML tag,请看TextHelper#sanitize获取详情。 Ruby on Rails 2.0的新特性介绍(4)时间:2011-11-09 javaeye robbin最后,我们还添加了“HTTP only cookies”支持,这一特性并不是所有的浏览器都支持,但是对于支 持的浏览器你就可以派上用场了。 Action Pack: Exception handling 大多数常见的异常都可以统一处理,而不是每个需要单独的处理。通常情况下,你只需要覆盖 rescue_action_in_public方法,来进行统一的异常处理即可。但是你也有可能需要使用自己的case语句 来处理特定场合的异常。因此我们现在提供了一个类级别的宏叫做rescue_from,你可以使用它来声明针 对某个特定的Action来捕获异常,例如: class PostsController < ApplicationController rescue_from User::NotAuthorized, :with => :deny_access protected def deny_access ... end end Action Pack: Cookie store sessions Rails2.0默认的Session存储机制现在是基于Cookie的方案。Session也可以不必存储在服务器的文件 系统或者数据库系统里面,而是以ruby hash的格式每次作为cookie发送到客户端浏览器来保持。这样做 不单单会比传统的服务器端保存Session的方式要快一些,而且完全不需要维护。你不需要在服务器上面 运行cron job任务来清理session文件,也不必担心因为你忘记清理session文件导致你的服务器/tmp分区 下面因为塞满了50万的session文件,从而让你的服务器crash掉。 如果你能够遵循一些最佳实践,保持session最小化,例如只在session里面存放user_id和flash信息 ,那么这种session机制就会很棒。但是,如果你打算在session里面保存核弹发射代码的话,这一存储机 制就不是一个好主意了。因为它们无法被加密(例如用户伪造is_admin=true),它们很容易被用户看到。 如果对于你的应用程序来说,这是一个必须注意的问题,那么你就应该使用传统的session存储机制(但你 首先应该先做一下调查)。 Action Pack: New request profiler 在一个真实的应用当中找出性能瓶颈是一个艰难的活,但有了我们新的request profiler,工作会变 得简单很多。request profiler跟踪一个完整的执行脚本,报告执行结果,你可以像这样来使用它: $ cat login_session.rb get_with_redirect |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |