2016-05-08 2 views
1

Ein typisches Szenario codiert ein Tag mit einer URL. Durch Antippen des Tags wird eine HTTP-Anfrage erstellt, die vom Webserver gelöst wird. Kann ich (wir) feststellen, dass das Tippen tatsächlich auf das Tippen des Tags folgte, anstatt die URL mit einem Lesezeichen anzufordern oder die URL in die Adressleiste eines Browsers einzugeben?Bestätigung der HTTP-Anfrage kam durch Antippen des NFC-Tags

Im Kontext meiner Frage muss ich lernen, wie die mobilen Geräte wissen, was mit dem Tap zu tun ist, d. H. Welcher Mechanismus macht die HTTP-Anfrage?

Im Zusammenhang mit meinen Fragen muss ich herausfinden, ob es eine Möglichkeit gibt, in diesem Kontext eine Validierung durchzuführen, da HTTP_REFERER ein Klickereignis benötigt, um die Variable mit Daten zu füllen. Ist das Tippen ein Klickereignis? Wird das Tap-Ereignis ausgelöst?

Ich habe C# und clientseitige Scripting Fähigkeiten und hostet die URLs auf einem Windows Server mit nopCommerce mit C# mit MVC und die Tags werden natürlich überall sein, aber ich muss lernen, ob es einen Weg gibt um das Tag zu validieren wurde tatsächlich angezapft, um die HTTP-Anfrage zu stellen.

+0

Ich bezweifle, dass Sie feststellen können, ob die Anfrage von einem Tap auf einem Gerät kommt, die nächste, die Sie erhalten, ist durch den Referer und den User-Agent, mit ihnen können Sie die Ursprungsseite sehen und wenn der Client von einem Handy kommt Gerät. – Gusman

Antwort

2

Jetzt ist die Frage ein wenig unklar, aber wenn ich richtig verstehe, möchten Sie feststellen, ob die Person auf die Seite durch die Verwendung von NFC-Tag oder auf andere Weise zugreift.

Die einfache Antwort ist nein, zuerst aus NFC Tags nicht Webseiten öffnen. Die Software, die das NFC-Tag liest, identifiziert einen URI-Tag-Typ und öffnet möglicherweise die Webseite. Aus diesem einfachen Grund ist es die Software, die Sie versuchen, nicht das Tag selbst zu erkennen. Daher wird es unmöglich sein, dass Sie definitiv sagen, "Ja, das ist ein NFC-Tag".

Allerdings, wenn Sie Ihr Problem betrachten. Sie müssen wissen, ob die Anfrage von einem NFC-Tag stammt. Nun, warum vereinfachen wir das nicht, warum nicht Ihre URL spezifisch für NFC machen

Zum Beispiel sagen wir, Sie möchten auf das Produkt MyCoolProdct gefunden bei http://www.example.com/mycoolproduct zugreifen. Wenn Sie die Person direkt an diese URL senden, ist es schwer zu erkennen, dass es sich um ein NFC-Tag handelt. Was passiert aber, wenn Sie die URL für NFC-Tags ändern, indem Sie beispielsweise einen Abfragezeichenfolgenparameter hinzufügen?

http://www.example.com/mycoolproduct?a=NFC

Oder Sie könnten ein rediection System machen so das Ergebnis zurück zu /mycoolproduct wie ist.

Benutzerzugriffe: http://www.example.com/nfctap?q=mycoolproduct

NFC Tap Aktion protokolliert die Anfrage (Sitzung, Benutzer persistenten Speicher, [Kundenattribute]). Leitet den Benutzer dann an die q-URL um.

Dies sind einige der grundlegenden Ideen, aber ich denke, Sie suchen am falschen Ort. Es ist nahezu unmöglich (und schwer zu warten), NFC-Tags genau zu erkennen.

+0

Ich benutze QueryStrings Nico und die gesamte URL wird in das Tag zum Beispiel codiert ... http://www.example.com/mycoolproduct?id = 1234 Beim Speichern von Lesezeichen wird jedoch die gesamte URL einschließlich QueryString gespeichert, sodass der Wert der QueryString-ID auf dem Server nicht dazu beiträgt, zu überprüfen, ob die HTTP-Anforderung für diese URL nicht von einem Lesezeichen geladen wurde oder die URL in den Browser eingegeben wurde Adressleiste. Bisher bedeutet dies, dass NFC-Tags für ein Geschäftsmodell, das in diesem Kontext eine Validierung erfordert, praktisch nutzlos sind, wenn jeder Tap als tatsächliches Antippen des Tags aufgezeichnet werden muss. – ClintonGallagher

+0

Wenn Sie die "TAPS" als einzelne Einheiten aufzeichnen möchten, müssen Sie die NFC-Lesesoftware bereitstellen. Dies ist der einzige Ort, an dem Sie genaue Aufzeichnungen garantieren können. Alles außerhalb davon kann verändert oder geändert werden. Um nun die Browser-Lesezeichen zu beschränken, würde ich vorschlagen, dass Sie, wenn Sie "? Id = xxx" erkennen, den Tap protokollieren und dann auf die Seite ohne das ID-Abfrage-String-Segment umleiten. Daher werden Browser die Seite, die den Tipp aufzeichnet, nicht mit einem Lesezeichen versehen. – Nico

+0

Ich habe festgestellt, dass eine URL mit einem QueryString, der als Kurzlink geändert wurde, das Setzen von Lesezeichen für das Tippen verhindert. das erneute Laden einer beliebigen Seite, über die die verkürzte Verbindung zum Laden verwendet werden kann, ist keine Überlegung, da das Ziel darin besteht, den Abgriff als Abgriff zu validieren. Auf der anderen Seite kann ein NDEF-Leser eine verkürzte URL lesen, die auf dem Tag codiert ist, kopiert und manuell erneut gesendet werden, was die Anzahl der Klicks verfälschen würde. – ClintonGallagher

Verwandte Themen