如本机我测试域名为test.blog.zool.it:3000 打开的uri为 /post/Hello-World fullurl为 http://test.blog.zool.it:3000/post/Hello-world 则rails的路由生成一下几个方法 domain(tld_length = 1) 取得域名 subdomain(tld_length = 1) subdomains(tld_length = 1) 取得子域名 host() 取得主机名 host_with_port() 取得带端口的主机名 raw_host_with_port() 代理服务器的主机名和端口 port() 取得由raw_host_with_port()获得的端口数值 port_string() 取得raw_host_with_port()获得的端口文本字符串 protocol() 取得当前使用网络协议 scheme() 取得网络协议 request_uri() request请求的uri地址 server_port server_port() 取得由env‘SERVER_PORT’返回的端口值 ssl?() 当前是否在是用https加密协议 standard_port() 返回网络协议标准端口(http为80, https为443) standard_port?() 判断当前协议是否是标准端口 url() 取得当前requset完整urlrequest.domain #=> zool.it
request.domain(2) #=> blog.zool.itrequest.subdomain #=> "test.blog"
request.subdomain(2) #=> "test"
request.subdomain #=> ["test", "blog"]
request.subdomain(2) #=> ["test"]request.host #=> "test.blog.zool.it"
request.host_with_port #=> "test.blog.zool.it:3000"
request.raw_host_with_port #=> "test.blog.zool.it:3000"
request.port #=> 3000
request.port_string #=> ":3000"
request.protocol #=> "http://"
request.scheme #=> "http"
request.request_uri #=> "/posts/Hello-World"
request.server_port #=> "3000"
request.ssl?() #=> false
request.standard_port #=> 80
request.standard_port? #=> false
request.url #=> "http://test.blog.zool.it:3000/posts/Hello-World"
2011年7月28日 星期四
rails 中取得 URL 信息的一些方法
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言