Permettez-moi d'abord de vous parler des exigences de mon projet: un utilisateur scanne le code QR et générera un lien. Le lien enverra une demande au backend et renverra l'adresse de téléchargement d'un APK. L'utilisateur peut télécharger cet APK en cliquant sur le bouton de téléchargement. Alors un problème s'est produit. Après les tests, j'ai découvert qu'en numérisant la page ouverte avec WeChat, en cliquant sur le bouton de téléchargement, je n'ai pas pu télécharger l'APK. Après Baidu, il s'est avéré que le navigateur intégré de WeChat a bloqué le lien de téléchargement et a communiqué avec le côté de la demande plus tard. L'exigence a été modifiée si l'utilisateur l'ouvrait avec le navigateur intégré de WeChat, l'utilisateur a été invité à modifier le navigateur pour ouvrir la page, sinon l'APK n'a pas pu être téléchargé. Alors, comment déterminez-vous si l'utilisateur utilise un navigateur WeChat?
Nous savons que JS peut obtenir des informations pertinentes sur le navigateur via Window.Navigator.UserAgent, telles que: Mozilla / 5.0 (Windows NT 5.1) Applewebkit / 537.36 (KHTML, comme Gecko) Chrome / 33.0.1750.154 Safari / 537.36. Ensuite, nous pouvons également obtenir des informations pertinentes sur le navigateur intégré de WeChat via cette méthode: Mozilla / 5.0 (iPhone; CPU iPhone OS 7_1_1 Like Mac OS X) Applewebkit / 537.51.2 (KHTML, comme Gecko) Mobile / 11d201 Micromessenger / 5.3. En fonction du mot-clé Micromessenger , nous pouvons déterminer s'il s'agit d'un navigateur intégré pour WeChat. La fonction de jugement est la suivante:
fonction isWeixin () {var ua = window.navigator.useragent.tolowercase (); if (ua.match (/ micromessenger / i) == 'Micromessenger') {return true;} else {return false;}}démo:
<! Doctype html> <html lang = "en"> <éadf> <meta charset = "utf-8" /> <itle> Déterminez simplement s'il s'agit d'un navigateur intégré pour wechat </title> </ head> <body> <h1> Si vous l'ouvrez avec un navigateur WECHAT, vous pouvez voir le texte ci-dessous </h1> <p> Type = "Text / JavaScript"> window.onLoad = function () {if (isweixin ()) {var p = document.getElementsByTagName ('p'); p [0] .InnerHtml = window.navigator.UserAgent;}} fonction isweixin () {var ua = window.navigator.useragent.tolowercase (); if (ua.match (/ micromessenger / i) == 'Micromessenger') {return true;} else {return false;}} </ script>Remarque: vous pouvez mettre la démo ci-dessus sur le serveur et générer un code QR et le scanner.
Ce qui précède est la connaissance pertinente de JavaScript juger le code d'instance de navigateur WeChat qui vous est présenté par l'éditeur. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!