WeChat 公式アカウントと HTML 5 混合モードが明らかに 1 - JSSDK の展開方法
WeChat 公式アカウントと HTML 5 混合モードが明らかに 2 - 携帯電話のアルバムで写真を共有
WeChat 公式アカウントと HTML 5 混合モードが明らかに 3 - JSSDK地理的位置を取得します
WeChat 公式アカウントと HTML 5 混合モードの公開 4 - jssdk は WeChat を呼び出してスキャンします
現在の WeChat ブラウザでは、一部のバージョンは APP Store ページをサポートしていません。おそらく WeChat の閲覧です。サーバー上の制限や利益相反がある可能性がありますが、Tencent のオープンさから判断すると、制限は必要ありません。
たとえば、ページに次のコードを記述します:
01 href="https://itunes.apple.com/cn/app/wo-ai/id955760733?mt=8">download</a>
上記のコードは、WeChat ブラウザーでクリックした場合、対応するバグはありませんが、このアドレスが 360 などのリンクに変更されると、 Baiduなどのアドレスなら大丈夫です。
この問題の主な解決策は、WeChat ブラウザで WeChat の API を使用することです。
ステップ 1、ブラウザが WeChat ブラウザであるかどうかを確認します。JS コードは次のとおりです:
01 varisWechat = function (){02 var ua = navigator.userAgent.toLowerCase();03 if(ua.match(/MicroMessenger/i)=="micromessenger") {04 return true;05 } else {06 return false;07 }08 }
もちろん、で紹介したバックグラウンド言語 (PHP、Ruby、nodejs など) を使用することもできます。前のセクションで、ブラウザーが WeChat ブラウザーであるかどうかを判断します。
ステップ 2、「encodeURIComponent」を使用して元のリンクをエンコードし、それを「http://mp.weixin.qq.com/mp/redirect?url=」と結合して、新しいリンク アドレスを生成します。結果は次のようになります。
01 "http://mp.weixin.qq.com/mp/redirect?url=https%3A%2F%2Fitunes.apple.com%2Fcn%2Fapp02 %2Fwo-ai%2Fid955760733%3Fmt%3D8"
ステップ 3、完全なサンプル コードのメソッドは次のとおりです:
01 <!DOCTYPEhtml>02 <htmllang="en">03 <head>04 <meta charset="UTF-8">05 <title>第12章 12.2节</title>06 </head>07 <body>08 <h1style="font-size: 40px">:)</h1>09 <bstyle="font-size: 20px">App Store Demo!</b>10 <pstyle="font-size: 20px" id="conversionUrl"></p>11 <scripttype="text/javascript">12 var isWechat = function(){13 var ua =navigator.userAgent.toLowerCase(); //获取浏览器字符14 if(ua.match(/MicroMessenger/i)=="micromessenger") { //判断是否为微信15 return true;16 } else {17 return false;18 }19 },20 conversionUrl = function(url){ //根据浏览器类型转换url21 if(isWechat()){22 return23 "http://mp.weixin.qq.com/mp/redirect?url="+encodeURIComponent(url);//转换为微信内可用的24 地址25 }else{26 return url; //不转换27 }28 },29 _url =30 conversionUrl("https://itunes.apple.com/cn/app/wo-ai/id955760733?mt=8");31 window.onload = function(){ //页面载入成功后修改dom32 document.getElementById("conversionUrl").innerHTML = "转换之后的url:"+_url;33 }34 </script>35 </body>36 </html>
から抜粋