在h5中调起微信打开指定链接 (不能实现,直接回怼)

function openWechatLink(url) {
  if(typeof WeixinJSBridge == "undefined") {
    if(document.addEventListener) {
      document.addEventListener('WeixinJSBridgeReady', function() {
        openLink(url);
      }, false);
    } else if(document.attachEvent) {
      document.attachEvent('WeixinJSBridgeReady', function() {
        openLink(url);
      });
      document.attachEvent('onWeixinJSBridgeReady', function() {
        openLink(url);
      });
    }
  } else {
    openLink(url);
  }
}
function openLink(url) {
  WeixinJSBridge.invoke('openUrl', {
    "url": url,
    "delay": 0
  });
}
// 调用方法
openWechatLink('http://www.example.com');

其中,openWechatLink方法接受一个参数,即要打开的链接地址。在方法内部,先判断是否存在WeixinJSBridge对象,如果不存在则监听WeixinJSBridgeReady事件,等待微信JS桥接准备好后再调用openLink方法打开链接;如果存在则直接调用openLink方法打开链接。openLink方法内部使用WeixinJSBridge.invoke方法来调起微信打开链接。

WeixinJSBridge.invoke 这种方案官方文档是用于支付使用

用于微信小程序,app ,所有pass!

还有一些方案  引用

<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>

但是搜索源码中并未找到

wx.openUrlWithExtraWebview({ }) 函数!

大坑!!停止无畏的浪费时间,我们的时间很宝贵!!!

### 实现H5页面中的微信登录 #### 准备工作 为了使H5页面能够调用微信登录功能,需先完成准备工作。这包括注册微信公众平台账号并创建应用以获取`AppID`和其他必要参数[^1]。 #### 引入微信JS-SDK 在HTML文档的头部部分引入微信提供的官方JavaScript工具包——JS-SDK。此操作可通过添加如下脚本标签来实现: ```html <script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script> ``` 该资源链接指向的是最新版本的微信JS-SDK库文件。 #### 配置URL与权限验证 对于基于Vue框架构建的应用程序而言,在路由配置中设置相应的重定向路径即可;而对于传统的纯静态网页,则应在`.html`入口文件里做相应处理[^2]。无论哪种情况,都应确保当前域名已加入到公众号后台的安全域名列表之中。 #### 发起授权请求 前端发起针对特定用户的OAuth 2.0认证流程时使用的URL格式如下所示: ``` https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect ``` 请注意替换上述模板里的占位符(如`APPID`, `REDIRECT_URI`等),使其匹配实际应用场景的需求[^3]。 #### 处理调逻辑 当用户同意授权后会被自动跳转至指定调地址,并附带一个临时票据`code`作为查询字符串的一部分传递过来。服务器端接收到这个`GET`请求之后就可以利用`code`换取access_token以及openid了。 ---
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值