4646关注14704浏览
因小程序有一个留言反馈的功能需要获取用户的信息,所以需要进行用户授权操作。
在用户第一次进入小程序时,会弹窗提示用户是否授权,用户在此时能同意则很理想。但是如果拒绝了,那么就要再次授权。
假设用户拒绝了授权,用户进入留言界面时,则再次弹窗提示用户授权,否则不能使用该功能。可是我在liuyan.js页面的 onLoad: function (options) {} 中 调用 wx.authorize 接口没任何反应。代码如下
onLoad: function (options) {
var that = this
wx.login({
success: function (res) {
wx.getSetting({
success(setRes) {
// 判断是否已授权(用户进入时会判断是否已授权)
if (!setRes.authSetting['scope.userInfo']) {
// 授权访问
wx.authorize({
scope: 'scope.userInfo',
success() {
// 用户已经同意小程序使用个人基本信息,后续调用 wx.getUserInfo 接口不会弹窗询问
wx.getUserInfo({
lang: "zh_CN",
success: function (userRes) {
// 发起网络请求
wx.request({
url: 'http://localhost:8080/fm93/xcx/user.action',
data: {
code: res.code,
encryptedData: userRes.encryptedData,
iv: userRes.iv,
signature: userRes.signature
},
header: {
"Content-Type": "application/x-www-form-urlencoded"
},
method: 'POST',
// 服务端回调
success: function (result) {
var sessionKey = result.data;
console.log("--sessionKey--" + sessionKey);
wx.setStorageSync("session3rd", sessionKey);//存储后台返回的3rdsession
}
})
}
})
},
fail: function () {
//用户拒绝授权
//
}
})
} else {
// 获取用户信息
console.log("已授权")
}
}
})
}
})
}
-
至过去的我
2044人对此回答表示赞同
我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多> -
贺纸张
4人对此回答表示赞同
那如果用户拒绝授权却还是要使用留言反馈这功能,那我不是获取不到用户信息
展开40回复分享发布于 5年前评论(0)
收起评论
-
Samantha栗子
1人对此回答表示赞同
拒绝后在一段时间内是不会再次让你授权的。
展开10回复分享发布于 5年前评论(0)
收起评论
-
榛子
1人对此回答表示赞同
跳登录啊,大哥。难道你不做登录页面?
展开10回复分享发布于 5年前评论(0)
收起评论