使用场景
网站/app登陆/支付会用到微信授权和支付宝授权
微信授权
- 有一个微信小程序
- 请求用户授权
微信snsapi_base静默授权 移动应用微信登录是基于OAuth2.0标准协议构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.0授权登录接入之前,需要完成一下工作才可以开始介接入:
微信OAuth2.0授权登录目前支持authorization_code模式,适用于拥有server端的应用授权。该模式整体流程为:
-
第三方发起微信授权请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;
-
通过code参数加上AppID和AppSecret等,通过API换取access_token;
-
通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。
1、获取当前服务供应商
// 获取服务供应商
uni.getProvider({
service: 'oauth',
success: function (res) {
// 获取用户登陆凭证code
console.log(res.provider)
}
});
2、 通过服务供应商获取用户登录凭证code
// 获取用户登录凭证code
uni.login({
provider: res.provider,
success: function (loginRes) {
console.log('uniapp登录凭证',loginRes);
}
});
3、通过服务供应商获取用户基础信息 微信为示例
uni.login({
provider: 'weixin',
success: function (loginRes) {
console.log(loginRes.authResult);
// 获取用户信息
uni.getUserInfo({
provider: 'weixin',
success: function (infoRes) {
console.log('用户昵称为:' + infoRes.userInfo.nickName);
}
});
}
});
微信支付
- 发起支付流程
- 支付回调
支付宝授权
- 有一个微信小程序
- 请求用户授权
支付宝支付
- 发起支付流程
- 支付回调