简体   繁体   中英

how to get the remote ip (requester) on grape-api rails application

I have a working rails application with grape-gem working as an end point for some APIs in the application. I need to get the remote ip for the requester and return it back in the response. I could do that on regular controllers using

request.remote_ip

however, in grape calls, the 'request' is not a defined variable.

how can I get access to the remote ip on grape?

使用env

env['REMOTE_ADDR']

The 'answer' by @zx1986 is the best / correct. REMOTE_ADDR is not safe, as outlined in this effort-post answer . The Grape API docs recommend using the direct remote_ip value (for ActionDispatch) in the request env, when the request helper is obscured, like in the case of Grape:

env["action_dispatch.remote_ip"]
# or
request.env["action_dispatch.remote_ip"]

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM