Heim  >  Artikel  >  Web-Frontend  >  Javascript schränkt den Zugriff auf Webseiten nur in den integrierten browser_javascript-Tipps von WeChat ein

Javascript schränkt den Zugriff auf Webseiten nur in den integrierten browser_javascript-Tipps von WeChat ein

WBOY
WBOYOriginal
2016-05-16 16:31:431744Durchsuche

Dann stellt sich die Frage, ob es sich bei dieser Webseite um die Entwicklung eines mobilen Web-Frontends handelt. Ich habe der Verwendung der HTML5-Bootstrap-Kombination Priorität eingeräumt. Die anderen Frontend-Aufgaben werden durch JavaScript gelöst Verwenden Sie vollständig natives JavaScript.) Der Code verwendet kein Framework, da die Ladegeschwindigkeit von Webseiten auf Mobiltelefonen von Natur aus langsam ist und viele nicht verwendete Funktionen im Framework auch mit der Webseite geladen werden, was den Benutzerverkehr verbraucht.

Nachdem alle Funktionen vorhanden waren und der Kunde mit der Testversion sehr zufrieden war, übermittelte ich den Code an den offiziellen Server. Die andere Partei erwähnte jedoch plötzlich etwas: Die von Ihnen erstellte Seite ist zwar sehr schön und gut kompatibel, aber auf diese Seite kann auch über einen Browser auf Ihrem Computer zugegriffen werden, sodass andere den Quellcode der Seite problemlos anzeigen können Kopieren Sie dann die gesamte Seite. Gibt es eine Möglichkeit, dies zu verhindern? Dann tritt das Problem erneut auf. Dies ist das erste Mal, dass ich eine WeChat-Sekundärentwicklung durchführe. Ich bin noch nie auf eine solche Nachfrage gestoßen.

Ich konnte eine Weile nicht daran denken, also habe ich dieses Problem vorerst beiseite gelegt und mich um ein paar Backend-Geschäfte gekümmert. Beim Ausführen einer Datenerfassungsfunktion im Hintergrund wurde der Parameter $_SERVER['HTTP_USER_AGENT'] im PHP-Code verwendet. Mir fiel plötzlich auf, dass der Browser beim Zugriff auf die Webseite einen UserAgent an den Server sendet Enthält einige grundlegende Informationen zum System von WeChat. Wird der UserAgent beim Surfen im Internet mit WeChat ein eindeutiges Logo haben? WeChat ist ihr Kernprodukt)? Verwenden Sie einfach den Code, um den UserAgent auszudrucken, um dies herauszufinden. Der Javascript-Code lautet wie folgt:

Code kopieren Der Code lautet wie folgt:


Ich habe das Ergebnis wie im Bild auf meinem Handy angezeigt bekommen:

Dieses Mal habe ich wirklich etwas anderes gesehen. Ja, es ist dieses Ding: MicroMessenger/6.0.0.50_r844973.501 Die aktuelle Versionsnummer von WeChat Der Nutzung sollte ein eindeutiges Logo von WeChat vorangestellt werden. Tatsächlich dachte ich zuerst, es sei MicroMessage, weil ich dachte, dass die chinesische Übersetzung „Mikrobotschaft“ bedeutet, aber nach genauerem Hinsehen stellte ich fest, dass dies nicht der Fall war. Später habe ich im Wörterbuch nachgeschlagen und herausgefunden, dass das Das Wort Messenger bedeutet „Bote, Bote“. Es fühlt sich nicht mehr seltsam an. Dieses Logo sollte in anderen Browsern nicht zu finden sein. Hier ist die Lösung. Bitte sehen Sie sich den Code an:

Code kopieren Der Code lautet wie folgt:


Dieser Code wurde auf Android, iPhone, iPad und PC getestet. Solange die Webseite nicht in WeChat geöffnet wird, wird zunächst das obige Warnfeld angezeigt. Die folgenden Seiten sind leer Wenn Sie im Warnfeld auf die Schaltfläche „OK“ klicken, wird die aktuelle Seite durch die letzten drei Codezeilen zwangsweise geschlossen. OK, jetzt, da die ursprüngliche Absicht des Benutzers erkannt wurde, können wir einfach Schluss machen.

Moment, können wir wirklich Feierabend machen? Sind Sie sicher, dass es keine weiteren Probleme geben wird? Natürlich nicht. Tatsächlich können Sie sich mit dieser Methode nicht entspannt zurücklehnen, denn gefälschte UserAgents können diese Einschränkung im Allgemeinen umgehen, aber nicht vor Bösewichten. Wenn ein Freund einen besseren Weg hat, dieses Problem zu lösen, lassen Sie es mich bitte in den Kommentaren unten wissen. Technologie liegt im gegenseitigen Teilen und Kommunizieren, haha.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn