Как получить IP-адрес, реферер и пользовательский агент в ruby? - PullRequest
6 голосов
/ 15 июля 2011

Я хочу записать IP-адрес пользователя, реферера и агента пользователя.
В PHP я могу получить их из следующих переменных:

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

Как получить их в ruby?

Ответы [ 3 ]

15 голосов
/ 15 июля 2011

PHP встроен в веб-сервер.Ruby - это язык общего назначения: если вам нужен контекст веб-сервера, вам придется установить его самостоятельно.К счастью, это просто.

Один из самых простых способов начать работу с Sinatra .Установите гем:

gem install sinatra

Затем создайте myapp.rb:

require 'sinatra'

get '/' do
    request.user_agent
end

Запустите веб-сервер:

ruby -rubygems myapp.rb

Посетите URL-адрес по умолчанию Синатры: http://localhost:4567/

Et voilà.

11 голосов
/ 15 июля 2011

Вам нужен массив request.env

request.env['REMOTE_ADDR']:

2 голосов
/ 15 июля 2011

Я предполагаю, что под ruby ​​вы подразумеваете ruby ​​на рельсах, следующая ссылка показывает вам, как получить к ним доступ:

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

...