现要在手机H5页面上,加入微信授权登录功能,需要在非微信浏览器中实现。 比如腾讯云,在手机浏览器中打开(比如qq或者uc之类的),选择微信登录时,他可以调起微信app授权,然后确认授权后,又会跳回到原来的手机浏览器,并且已经是微信登录状态了。请问这个怎么弄的
时间: 2023-02-06 18:46:48 浏览: 199
在 H5 页面中实现微信授权登录的过程大致如下:
1. 在 H5 页面中点击 "微信登录" 按钮。
2. 向服务端发送请求,获取微信登录所需的授权地址。
3. 在 H5 页面中使用 JavaScript 在新窗口中打开授权地址。
4. 用户在微信中确认授权后,会跳转到授权后重定向的地址,此地址中包含了授权码 code。
5. 在 H5 页面中使用 JavaScript 关闭新窗口,并向服务端发送请求,使用授权码 code 向微信服务端申请访问令牌 access_token 和用户信息。
6. 服务端向微信服务端申请访问令牌 access_token 和用户信息,并将结果返回给 H5 页面。
7. H5 页面接收服务端返回的访问令牌 access_token 和用户信息,并将用户信息显示在页面上。
需要注意的是,上述流程中的第 3 步和第 5 步使用的是 JavaScript 在新窗口中打开和关闭授权地址,因此这部分代码可能会被浏览器拦截,需要使用方案来解决。此外,第 4 步中的授权码 code 也有可能被拦截,因此可以使用 URL 重定向的方式来传递
相关问题
微信h5页面跳转浏览器 在微信中点击链接直接跳转到手机默认浏览器代码实现...
你可以使用以下的JS代码来实现微信H5页面跳转浏览器:
```javascript
function openInBrowser() {
var ua = navigator.userAgent.toLowerCase();
if (ua.match(/MicroMessenger/i) == "micromessenger") {
// 如果在微信中,则使用JS-SDK进行跳转
wx.miniProgram.navigateTo({url: '当前H5页面的URL'});
} else {
// 如果不在微信中,则直接在浏览器中打开链接
window.location.href = '当前H5页面的URL';
}
}
```
在这个代码中,我们首先检查用户代理字符串是否包含“MicroMessenger”关键字。如果包含,则表示用户正在使用微信浏览器。因此,我们将使用微信JS-SDK的`wx.miniProgram.navigateTo`方法在微信小程序中打开链接。如果用户不在微信中,则直接在浏览器中打开链接。
支付宝h5页面跳转浏览器 在微信中点击链接直接跳转到手机默认浏览器代码实现.
你可以使用以下的JS代码来实现支付宝H5页面跳转浏览器:
```javascript
function openInBrowser() {
var ua = navigator.userAgent.toLowerCase();
if (ua.match(/AlipayClient/i) == "alipayclient") {
// 如果在支付宝中,则使用JSBridge进行跳转
AlipayJSBridge.call('pushWindow', {
url: '当前H5页面的URL',
param: {
showTitleBar: true
}
});
} else {
// 如果不在支付宝中,则直接在浏览器中打开链接
window.location.href = '当前H5页面的URL';
}
}
```
在这个代码中,我们首先检查用户代理字符串是否包含“AlipayClient”关键字。如果包含,则表示用户正在使用支付宝浏览器。因此,我们将使用支付宝JSBridge的`AlipayJSBridge.call`方法在支付宝中打开链接。如果用户不在支付宝中,则直接在浏览器中打开链接。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)