Deixe -me primeiro falar sobre os requisitos do meu projeto: um usuário digitaliza o código QR e gerará um link. O link enviará uma solicitação para o back -end e retornará o endereço de download de um apk. O usuário pode baixar este APK clicando no botão de download. Então ocorreu um problema. Após o teste, descobri que, digitalizando a página aberta com o WeChat, clicando no botão de download, não consegui baixar o APK. Depois do Baidu, verificou-se que o navegador embutido do WeChat bloqueou o link de download e se comunicou com o lado da demanda mais tarde. O requisito foi alterado para se o usuário o abrir com o navegador interno do WeChat, o usuário foi solicitado a alterar o navegador a abrir a página, caso contrário, o APK não poderá ser baixado. Então, como você determina se o usuário está usando um navegador WeChat?
Sabemos que o JS pode obter informações relevantes sobre o navegador através do window.navigator.UserAgent, como: Mozilla/5.0 (Windows NT 5.1) Applewebkit/537.36 (KHTML, como Gecko) Chrome/33.0.1750.154 Safari/537.36. Também podemos obter informações relevantes sobre o navegador interno do WeChat através deste método: Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_1 como Mac OS X) Applewebkit/537.51.2 (Khtml, Gecko) Mobile/11d201 Micromessesenger/5.3. Com base na palavra-chave Micromessenger , podemos determinar se é um navegador embutido para o WeChat. A função de julgamento é a seguinte:
function isweixin () {var ua = window.navigator.UserAgent.TolowerCase (); if (ua.match (/microMessenger/i) == 'microMessenger') {return true;} else {retornar false;}}Demonstração:
<! Doctype html> <html lang = "en"> <head> <meta charset = "utf-8"/> <title> basta determinar se é um navegador embutido para weChat </title> </head> <body> <h1> se você o abrir com um pupador wechat, você pode ver </h1> </h1> type = "text/javascript"> window.onload = function () {if (isweixin ()) {var p = document.getElementsByTagName ('p'); p [0] .innerhtml = window.navigator.userAgent; window.navigator.userAgent.tolowerCase (); if (ua.match (/microMessenger/i) == 'microMessenger') {return true;} else {return false;}} </script>Nota: Você pode colocar a demonstração acima no servidor e gerar um código QR e digitalizá -lo.
O exposto acima é o conhecimento relevante do JavaScript julgando o código de instância do navegador WECHAT apresentado a você pelo editor. Espero que seja útil para você. Se você tiver alguma dúvida, deixe -me uma mensagem e o editor responderá a você a tempo. Muito obrigado pelo seu apoio ao site wulin.com!