12 Stimmen

Wert von request.remote_ip in Ruby on Rails ändern

Zu Testzwecken möchte ich den Rückgabewert von request.remote_ip ändern. Auf meinem Entwicklungsrechner wird immer 127.0.0.1 zurückgegeben, so wie es sein sollte, aber ich möchte mir verschiedene falsche IPs geben, um das korrekte Verhalten meiner App zu testen, ohne sie zuerst auf einen Live-Server zu übertragen!

Ich danke Ihnen.

3voto

Matt Punkte 1133

Was ich jetzt gemacht habe, war, diesen Code am Ende der config/environments/development.rb Datei, um sicherzustellen, dass sie nur in der Entwicklungsphase ausgeführt wird

# fake IP for manuel testing
class ActionController::Request
  def remote_ip
    "1.2.3.4"
  end
end

Dadurch wird remote_ip beim Start des Servers auf 1.2.3.4 gesetzt. Jedes Mal, wenn Sie den Wert ändern, müssen Sie den Server neu starten!

1voto

sameera207 Punkte 16307

Diese Antwort funktioniert nur für rails3 (ich habe diese Antwort gefunden, als ich versuchte, eine ähnliche Frage für rails 3 zu beantworten),

So werde ich es hier posten, falls jemand versucht, das gleiche in Rails3 env zu tun

class ActionDispatch::Request
  def remote_ip
    '1.2.3.4'
  end
end

HTH

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X