php APP微信授权登录
2020-12-20 11:28:17
- 前端
<div id="applogin" onclick="login()"><img src="{DT_PATH}api/oauth/wechat/icon.png" alt="微信"/></div>
<script>
function login(){
if (navigator.userAgent.indexOf("Html5Plus") > -1) {
// app 环境
var wx = null;
plus.oauth.getServices(function (services) {
wx = services[0];
if (!wx.authResult) {
wx.login(function (e) {
// 登录成功
// alert(JSON.stringify(e))
// alert(e.target.authResult.openid);
var url = "/api/hcd.php?openid="+e.target.authResult.openid+"&nickname="+e.target.userInfo.nickname+"&avatar="+e.target.userInfo.headimgurl+"&unionid="+e.target.userInfo.unionid;
window.location.href = url;
}, function (err) {
alert(JSON.stringify(err))
});
} else {
// 已登录
wx.login(function (e) {
// 登录成功
// alert(JSON.stringify(e))
// alert(e.target.authResult.openid);
var url = "/api/hcd.php?openid="+e.target.authResult.openid+"&nickname="+e.target.userInfo.nickname+"&avatar="+e.target.userInfo.headimgurl+"&unionid="+e.target.userInfo.unionid;
// alert(url);
window.location.href = url;
}, function (err) {
alert(JSON.stringify(err))
});
}
}, function (err) {
alert(JSON.stringify(err))
});
} else {
}
}
- js自动判断app环境,如果是app环境则调用插件的wx.login方法获取 openid和unioinid 传递给接口
- php处理获取unionid返回用户信息