在Controller的Action之中,Rails提供了一些方法可以让你得知此request各种信息,包括:
action_name 目前的Action名称
- cookies Cookie下述
- headers HTTP标头
- params 包含用户所有传进来的参数Hash,这是最常使用的信息
- request 各种关于此request的详细信息
- request_method
- mime_type
- content_type
- headers
- body
- content_length
“ params ” 这个Hash是ActiveSupport::HashWithIndifferentAccess对象,而不是普通的Hash而已。Ruby内建的Hash,用Symbol的hash[:foo]和用字符串的hash["foo"]是不一样的,这在混用的时候常常搞错而取不到值,Rails在这里使用的ActiveSupport::HashWithIndifferentAccess对象,无论键是Symbol或字符串,都指涉相同的值,减少麻烦。