ก่อนอื่นให้ฉันบอกคุณเกี่ยวกับข้อกำหนดของโครงการของฉัน: ผู้ใช้สแกนรหัส QR และจะสร้างลิงค์ ลิงค์จะส่งคำขอไปยังแบ็กเอนด์และส่งคืนที่อยู่ดาวน์โหลดของ APK ผู้ใช้สามารถดาวน์โหลด APK นี้ได้โดยคลิกที่ปุ่มดาวน์โหลด จากนั้นมีปัญหาเกิดขึ้น หลังจากการทดสอบฉันพบว่าโดยการสแกนหน้าเปิดด้วย WeChat คลิกปุ่มดาวน์โหลดฉันไม่สามารถดาวน์โหลด APK ได้ หลังจาก Baidu ปรากฎว่าเบราว์เซอร์ในตัวของ WeChat บล็อกลิงก์ดาวน์โหลดและสื่อสารกับด้านอุปสงค์ในภายหลัง ข้อกำหนดถูกเปลี่ยนเป็นหากผู้ใช้เปิดด้วยเบราว์เซอร์ในตัวของ WeChat ผู้ใช้จะได้รับแจ้งให้เปลี่ยนเบราว์เซอร์เพื่อเปิดหน้าไม่เช่นนั้น APK ไม่สามารถดาวน์โหลดได้ ดังนั้นคุณจะพิจารณาได้อย่างไรว่าผู้ใช้ใช้เบราว์เซอร์ WeChat ได้อย่างไร?
เรารู้ว่า JS สามารถรับข้อมูลที่เกี่ยวข้องเกี่ยวกับเบราว์เซอร์ผ่าน Window.navigator.useragent เช่น: Mozilla/5.0 (Windows NT 5.1) Applewebkit/537.36 (Khtml เช่น Gecko) Chrome/33.0.1750.1544447.36 จากนั้นเรายังสามารถรับข้อมูลที่เกี่ยวข้องเกี่ยวกับเบราว์เซอร์ในตัวของ WeChat ด้วยวิธีนี้: Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_1 เช่น Mac OS X) Applewebkit/537.51.2 (khtml เช่น Gecko) มือถือ/11d201 micromessenger/5.3 จาก Micromessenger คำหลักเราสามารถพิจารณาได้ว่าเป็นเบราว์เซอร์ในตัวสำหรับ WeChat หรือไม่ ฟังก์ชั่นการตัดสินมีดังนี้:
function isweixin () {var ua = window.navigator.useragent.toLowerCase (); ถ้า (ua.match (/micromessenger/i) == 'micromessenger') {return true;} lement {return false;}}}}การสาธิต:
<! doctype html> <html lang = "en"> <head> <meta charset = "utf-8"/> <title> เพียงแค่ตรวจสอบว่าเป็นเบราว์เซอร์ในตัวสำหรับ wechat </title> </head> <body> <h1> หากคุณเปิดเบราว์เซอร์ wechat type = "text/javascript"> window.onload = function () {ถ้า (isweixin ()) {var p = document.getElementSbyTagname ('p'); p [0] .innerhtml = window.navigator.useragent;}} window.navigator.useragent.toLowerCase (); ถ้า (ua.match (/micromessenger/i) == 'micromessenger') {return true;}} {return false;}} </script>หมายเหตุ: คุณสามารถแสดงการสาธิตด้านบนบนเซิร์ฟเวอร์และสร้างรหัส QR และสแกน
ข้างต้นเป็นความรู้ที่เกี่ยวข้องเกี่ยวกับการตัดสินรหัสอินสแตนซ์ของเบราว์เซอร์ WeChat WeChat ที่แนะนำโดยบรรณาธิการ ฉันหวังว่ามันจะเป็นประโยชน์กับคุณ หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับคุณทันเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!