在Sinatra获取客户端的IP地址?

时间:2009-08-23 19:24:21

标签: ip-address sinatra

这是一个非常简单的问题,但在任何地方我都找不到这个......

如何从Sinatra获取客户端的IP地址?

get '/' do
    "Your IP address is #{....}"
end

2 个答案:

答案 0 :(得分:67)

Sinatra提供了request object,它是您应该使用的客户端请求数据的接口。

使用request.ip是查找客户端IP地址的首选方法:

get '/' do
  "Your IP address is #{request.ip}"
end

答案 1 :(得分:17)

无论如何我都会发布答案..所以:

get '/' do
"Your IP address is #{ @env['REMOTE_ADDR'] }"
end

Sinatra使用Rack::Request API,因此您可以使用其中的许多内容 也是指向Sinatra doc's

的链接