前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何解决“请在微信客户端打开链接”

如何解决“请在微信客户端打开链接”

作者头像
全栈程序员站长
发布2022-08-18 19:58:55
1.9K0
发布2022-08-18 19:58:55
举报

大家好,又见面了,我是你们的朋友全栈君。

如题,这个问题确实很苦恼,写下这篇博客记录下自己的问题。

代码语言:javascript
复制
<!DOCTYPE html>
<html>
    <head>
        <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0">
    </head>
    <body>
        <script type="text/javascript"> var ua = navigator.userAgent.toLowerCase(); var isWeixin = ua.indexOf('micromessenger') != -1; var isAndroid = ua.indexOf('android') != -1; var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1); if (!isWeixin) { document.head.innerHTML = '<title>抱歉,出错了</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0"><link rel="stylesheet" type="text/css" href="https://res.wx.qq.com/open/libs/weui/0.4.1/weui.css">'; document.body.innerHTML = '<div class="weui_msg"><div class="weui_icon_area"><i class="weui_icon_info weui_icon_msg"></i></div><div class="weui_text_area"><h4 class="weui_msg_title">请在微信客户端打开链接</h4></div></div>'; } </script>
    </body>
</html>

这是用其他网页访问微信链接的错误代码,关于

代码语言:javascript
复制
var isWeixin = ua.indexOf('micromessenger') != -1;

这句代码,应该是只要在请求头的user-agent字段中找到了’micromessenger’即可认为是微信的内置浏览器,但在抓包之后的更改后发现无效,返回的响应头状态码为302,应该是失败了.根据

代码语言:javascript
复制
var isAndroid = ua.indexOf('android') != -1;
var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1);

这两句代码估计,应该还要在请求头里加上其他的一些字段,但由于个人能力的原因,就不知道该怎么加,该问题暂时搁置. 附:模拟UA这条路估计已经无效了,尝试过模拟多次UA均已经失效.不过还是学到了一点东西.chrome浏览器f12点右上角的三个小点图标下拉more tools里的NetWork conditions 即可修改请求头

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/135324.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月3,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档