如何在ruby中获取IP地址,引用和用户代理?

时间:2011-07-15 00:39:57

标签: ruby ip-address user-agent referrer

我想记录用户的IP地址,引用者和用户代理 在PHP中,我可以从以下变量中获取它们:

$_SERVER['REMOTE_ADDR']
$_SERVER['HTTP_REFERER']
$_SERVER['HTTP_USER_AGENT']

如何让他们进入红宝石?

3 个答案:

答案 0 :(得分:15)

PHP嵌入在Web服务器中。 Ruby是一种通用语言:如果您需要Web服务器上下文,则必须自己安装它。幸运的是,这很容易。

最简单的入门方式之一是使用Sinatra。安装gem:

gem install sinatra

然后创建myapp.rb:

require 'sinatra'

get '/' do
    request.user_agent
end

启动网络服务器:

ruby -rubygems myapp.rb

访问Sinatra的默认网址:http://localhost:4567/

Etvoilà。

答案 1 :(得分:11)

您需要数组request.env

request.env['REMOTE_ADDR']:

答案 2 :(得分:2)

我假设你是红宝石,你的意思是ruby on rails,以下链接显示了如何访问它们:

http://techoctave.com/c7/posts/25-rails-request-environment-variables