是否有任何实例request.remote_ip
或request.ip
可以返回nil
?
根据 rails 源代码,看起来remote_ip
是从 3 个单独的标头获得的,HTTP_CLIENT_IP
、HTTP_X_FORWARDED_FOR
和 REMOTE_ADDR
。因此,如果您担心可能会收到没有这些标头的请求,那么看起来remote_ip
可能为 nil(在 ip
的机架实现中看起来几乎相同)。根据我所读到的内容,假设大多数HTTP请求中都存在REMOTE_ADDR
标头是非常安全的,因此这些值中的任何一个都不太可能为零。