2016-09-19 5 views
-1

Ich baue eine API mit Rails, die HTTP-Anfragen von anderen Standorten empfangen wird.So identifizieren Sie Remoteanforderungshost eindeutig

Jedes Mal, wenn eine neue Anfrage ausgegeben wird, muss ich in meiner App wissen, ob diese Seite diese Anfrage bereits gesendet hat. Ich frage mich, ob es eine Möglichkeit gibt, die Seite, die die Anfrage sendet, eindeutig zu identifizieren. Ich denke an die Verwendung von request.remote_ip aber wenn die Website auf einem freigegebenen Hosting ist, würde es die gleiche IP-Adresse mit anderen Websites teilen. Gibt es eine andere Möglichkeit, den entfernten Ursprung zu identifizieren?

+0

Wenn es keine Registrierung oder Authentifizierung für die API-Konsumenten gibt, gibt es nur so viel, was Sie tun können. Die IP-Adresse ist alles, was Sie wirklich haben. –

+0

Es gibt eine Registrierung und tokenbasierte Authentifizierung, aber wir werden eine kostenlose Testversion bei der Registrierung bereitstellen, also möchte ich sicherstellen, dass eine Website nur eine kostenlose Testversion haben kann. Andernfalls können sie weiterhin neue Konten erstellen und unbegrenzte Versuche durchführen. – Ben

Antwort

0

Wenn die Anfrage von einem API-Client ausgegeben wird, dann ist die IP alles, was Sie (etwas) verlassen können. Und wie Sie erwähnt haben, ist dies nicht wirklich einzigartig (Proxy, Shared Hosting, ...).

Verwandte Themen