有时候我们的站点会有需求就是强制只能微信打开,这时候有两种方法实现,一是使用JavaScript代码来检测浏览器的userAgent,然后判断是否是微信浏览器,如果不是,可以跳转到一个提示页面,让用户用微信扫描二维码或者复制链接到微信打开。
二是直接用PHP来判断浏览器引擎类型,判断这个请求头中是否包含“MicroMessenger”,如果不包含,则说明不是在微信内访问,就会输出请在微信内访问本应用。
第一种JS实现
<script type="text/javascript">
// 对浏览器的UserAgent进行正则匹配,不含有微信独有标识的则为其他浏览器
var useragent = navigator.userAgent;
if (useragent.match(/MicroMessenger/i) != 'MicroMessenger') {
// 这里警告框会阻塞当前页面继续加载
alert('已禁止本次访问:您必须使用微信内置浏览器访问本页面!');
// 以下代码是用javascript强行关闭当前页面
var opened = window.open('about:blank', '_self');
opened.opener = null;
opened.close();
}
</script>
第二种PHP实现
if (strpos($_SERVER["HTTP_USER_AGENT"], "MicroMessenger")==false) {
exit('请在微信内访问本应用!');
}