提交 1b29381c 编写于 作者: DCloud_JSON's avatar DCloud_JSON

修复,仅配置一种快捷登录时的错误

上级 0db87f78
## 1.0.32(2021-07-06)
修复,仅配置一种快捷登录时的错误
## 1.0.31(2021-07-02)
优化项目文档
## 1.0.30(2021-07-01)
......
......@@ -9,7 +9,7 @@ import interceptorChooseImage from '@/uni_modules/json-interceptor-chooseImage/j
const db = uniCloud.database()
export default async function() {
let loginConfig = uniStarterConfig.router.login
//清除有配置但设备环境不支持的登陆项
//清除有配置但设备环境不支持的登陆项
// #ifdef APP-PLUS
await new Promise((callBack)=>{
plus.oauth.getServices(oauthServices => {
......@@ -25,7 +25,6 @@ export default async function() {
return true
}
})
if(loginConfig.includes('univerify')){ //一键登录 功能预登录
uni.preLogin({
provider:'univerify',
......@@ -41,6 +40,7 @@ export default async function() {
})
// #endif
//非app移除:一键登录、苹果登陆;h5移除微信登陆,如果你做微信公众号登陆需要将此行移除
// #ifndef APP-PLUS
loginConfig = loginConfig.filter(item=>{
return ![
......@@ -52,19 +52,15 @@ export default async function() {
].includes(item)
})
// #endif
uniStarterConfig.router.login = loginConfig
// uniStarterConfig挂载到getApp().globalData.config
// #ifdef MP-WEIXIN
setTimeout(()=>{
// #endif
getApp({allowDefault: true}).globalData.config = uniStarterConfig;
// #ifdef MP-WEIXIN
},100)
// #endif
},1)
// 初始化appVersion(仅app生效)
initAppVersion();
......
......@@ -18,9 +18,9 @@
computed: {
loginConfig() {
return getApp().globalData.config.router.login
},
agreements() {
return getApp().globalData.config.about.agreements || []
},
agreements() {
return getApp().globalData.config.about.agreements || []
}
},
data() {
......@@ -36,58 +36,63 @@
"text": "短信验证码",
"logo": "/static/uni-quick-login/sms.png",
"path": "/pages/ucenter/login-page/index/index"
},
{
"id": "weixin",
"text": "微信登录",
"logo": "/static/uni-quick-login/wechat.png",
},
{
"id": "apple",
"text": "苹果登录",
"logo": "/static/uni-quick-login/apple.png",
},
{
"id": "univerify",
"text": "一键登录",
"logo": "/static/uni-quick-login/univerify.png",
},
{
"id": "qq",
"text": "QQ登录", //暂未提供该登录方式的接口示例
"logo": "/static/uni-quick-login/univerify.png",
},
{
"id": "xiaomi",
"text": "小米登录", //暂未提供该登录方式的接口示例
"logo": "/static/uni-quick-login/univerify.png",
},
{
"id": "sinaweibo",
"text": "微博登录", //暂未提供该登录方式的接口示例
"logo": "/static/uni-quick-login/univerify.png",
}
],
oauthServices: [],
config: {
"weixin": {
"text": "微信登录",
"logo": "/static/uni-quick-login/wechat.png",
},
"apple": {
"text": "苹果登录",
"logo": "/static/uni-quick-login/apple.png",
},
"univerify": {
"text": "一键登录",
"logo": "/static/uni-quick-login/univerify.png",
},
"qq": {
"text": "QQ登录",//暂未提供该登录方式的接口示例
"logo": "/static/uni-quick-login/univerify.png",
},
"xiaomi": {
"text": "小米登录",//暂未提供该登录方式的接口示例
"logo": "/static/uni-quick-login/univerify.png",
},
"sinaweibo": {
"text": "微博登录",//暂未提供该登录方式的接口示例
"logo": "/static/uni-quick-login/univerify.png",
}
},
univerifyStyle:{ //一键登录弹出窗的样式配置参数
"fullScreen": true, // 是否全屏显示,true表示全屏模式,false表示非全屏模式,默认值为false。
"backgroundColor": "#ffffff", // 授权页面背景颜色,默认值:#ffffff
"buttons": { // 自定义登陆按钮
"iconWidth": "45px", // 图标宽度(高度等比例缩放) 默认值:45px
"list": []
},
"privacyTerms": {
"defaultCheckBoxState": false, // 条款勾选框初始状态 默认值: true
"textColor": "#BBBBBB", // 文字颜色 默认值:#BBBBBB
"termsColor": "#5496E3", // 协议文字颜色 默认值: #5496E3
"prefix": "我已阅读并同意", // 条款前的文案 默认值:“我已阅读并同意”
"suffix": "并使用本机号码登录", // 条款后的文案 默认值:“并使用本机号码登录”
"privacyItems": []
}
oauthServices: [],
config: {},
univerifyStyle: { //一键登录弹出窗的样式配置参数
"fullScreen": true, // 是否全屏显示,true表示全屏模式,false表示非全屏模式,默认值为false。
"backgroundColor": "#ffffff", // 授权页面背景颜色,默认值:#ffffff
"buttons": { // 自定义登陆按钮
"iconWidth": "45px", // 图标宽度(高度等比例缩放) 默认值:45px
"list": []
},
"privacyTerms": {
"defaultCheckBoxState": false, // 条款勾选框初始状态 默认值: true
"textColor": "#BBBBBB", // 文字颜色 默认值:#BBBBBB
"termsColor": "#5496E3", // 协议文字颜色 默认值: #5496E3
"prefix": "我已阅读并同意", // 条款前的文案 默认值:“我已阅读并同意”
"suffix": "并使用本机号码登录", // 条款后的文案 默认值:“并使用本机号码登录”
"privacyItems": []
}
}
}
},
watch: {
agree(agree) {
this.univerifyStyle.privacyTerms.defaultCheckBoxState = agree
}
},
},
watch: {
agree(agree) {
this.univerifyStyle.privacyTerms.defaultCheckBoxState = agree
}
},
props: {
agree: {
type: Boolean,
......@@ -96,60 +101,49 @@
}
}
},
async created() {
let servicesList = this.servicesList
//获取当前环境能用的快捷登录方式
// #ifdef MP-WEIXIN
let id = 'weixin'
servicesList.push({
...this.config[id],
id
})
// #endif
// #ifdef APP-PLUS
this.oauthServices = await new Promise((callBack)=>{
plus.oauth.getServices(oauthServices => {
callBack(oauthServices.filter(({nativeClient,id})=>nativeClient))
//只返回1.应用支持 && 2.手机已安装对应客户端 && 3.uni-starter.config.js配置项中存在的快捷登录方式
}, err => {
callBack([])
uni.hideLoading()
uni.showModal({
title: '获取服务供应商失败:' + JSON.stringify(err),
showCancel: false,
confirmText: '知道了'
});
console.error('获取服务供应商失败:' + JSON.stringify(err));
async created() {
let servicesList = this.servicesList
//去掉配置中不存在的
servicesList = servicesList.filter(item => this.loginConfig.includes(item.id))
//处理一键登录
if(this.loginConfig.includes('univerify')){
this.univerifyStyle.privacyTerms.privacyItems = this.agreements
//设置一键登录功能底下的快捷登陆按钮
servicesList.forEach(({id,logo}) => {
if (id != 'univerify') {
this.univerifyStyle.buttons.list.push({
"iconPath": logo,
"provider": id
})
}
})
})
// #endif
//添加可用的第三方快捷登陆项
servicesList = servicesList.concat(this.oauthServices.map( ({id})=>{
return {...this.config[id],id}
}))
//去掉配置中不存在的
servicesList = servicesList.filter(item=>this.loginConfig.includes(item.id))
this.univerifyStyle.privacyTerms.privacyItems = this.agreements
//设置一键登录功能底下的快捷登陆按钮
servicesList.forEach(({id,logo})=>{
if(id != 'univerify'){
this.univerifyStyle.buttons.list.push({"iconPath":logo,"provider":id})
}
})
//如果当前页面为默认登陆界面。当前第一优先级的“第三方快捷按钮”要隐藏,因为他已经被渲染在默认登陆界面顶部
if(
this.getRoute(1)=='/pages/ucenter/login-page/index/index' &&
this.config[this.loginConfig[0]]
){
servicesList = servicesList.filter(item=>item.id!=this.loginConfig[0])
}
//去掉当前页面对应的登录选项
this.servicesList = servicesList.filter(item=>{
return item.path != this.getRoute(1)
})
console.log('servicesList',servicesList,this.servicesList);
//如果当前页面为默认登陆界面。当前第一优先级的“微信和苹果登陆”要隐藏,因为他已经被渲染在默认登陆界面顶部
if (
this.getRoute(1) == '/pages/ucenter/login-page/index/index' &&
['weixin','apple'].includes(this.loginConfig[0])
) {
servicesList = servicesList.filter(item => item.id != this.loginConfig[0])
}
//去掉当前页面对应的登录选项
this.servicesList = servicesList.filter(item => {
return item.path != this.getRoute(1)
})
console.log('servicesList', servicesList, this.servicesList);
},
mounted() {
// #ifdef APP-PLUS
plus.oauth.getServices(oauthServices => {
this.oauthServices = oauthServices
}, err => {
uni.showModal({
title: '获取服务供应商失败:' + JSON.stringify(err),
showCancel: false,
confirmText: '知道了'
});
console.error('获取服务供应商失败:' + JSON.stringify(err));
})
// #endif
},
methods: {
...mapMutations({
......@@ -169,13 +163,13 @@
uni.navigateBack();
} else {
uni.navigateTo({
url: path,
animationType:'slide-in-left'
url: path,
animationType: 'slide-in-left'
})
}
},
login_before(type, navigateBack = true) {
if (!this.agree&&type!='univerify') {
if (!this.agree && type != 'univerify') {
return uni.showToast({
title: '你未同意隐私政策协议',
icon: 'none'
......@@ -201,7 +195,7 @@
},
err => {
uni.hideLoading()
console.log(err);
console.error(err);
uni.showModal({
content: JSON.stringify(err),
showCancel: false
......@@ -236,7 +230,7 @@
},
fail: (err) => {
uni.hideLoading()
console.log(err);
console.error(err);
if (type == 'univerify') {
if (err.metadata && err.metadata.error_data) {
......@@ -274,13 +268,15 @@
title: '点击了第三方登陆',
icon: 'none'
});
console.log('点击了第三方登陆,provider:',err.provider);
let {path} = this.servicesList.find(item=>item.id==err.provider)||{}
console.log('path',path);
if(path&&path!=this.getRoute(1)){ //存在路径,且并不是当前已经打开的路径
this.to(path)
}else{
this.login_before(err.provider)
console.log('点击了第三方登陆,provider:', err.provider);
let {
path
} = this.servicesList.find(item => item.id == err.provider) || {}
console.log('path', path);
if (path && path != this.getRoute(1)) { //存在路径,且并不是当前已经打开的路径
this.to(path)
} else {
this.login_before(err.provider)
}
break;
default:
......@@ -292,10 +288,7 @@
})
},
login(params, type) { //联网验证登录
console.log({
params,
type
});
console.log({params,type});
let action = 'loginBy' + type.trim().toLowerCase().replace(type[0], type[0].toUpperCase())
uniCloud.callFunction({
name: 'uni-id-cf',
......@@ -306,7 +299,7 @@
success: ({
result
}) => {
console.log(result);
console.log("login-result",result);
if (result.code === 0) {
if (type == 'univerify') {
uni.closeAuthView()
......
{
"name" : "uni-starter",
"appid" : "__UNI__03B096E",
"description" : "云端一体应用快速开发模版",
"versionName" : "1.0.0",
"versionCode" : "100",
"transformPx" : false,
"app-plus" : {
"privacy" : {
"prompt" : "template",
"template" : {
"title" : "服务协议和隐私政策",
"message" : "  请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/>  你可阅读<a href=\"https://ask.dcloud.net.cn/protocol.html\">《服务协议》</a>和<a href=\"https://ask.dcloud.net.cn/protocol.html\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept" : "同意",
"buttonRefuse" : "暂不同意"
}
},
"compatible" : {
"ignoreVersion" : true
"name": "uni-starter",
"appid": "请点击重新获取",
"description": "云端一体应用快速开发模版",
"versionName": "1.0.0",
"versionCode": "100",
"transformPx": false,
"app-plus": {
"privacy": {
"prompt": "template",
"template": {
"title": "服务协议和隐私政策",
"message": "  请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/>  你可阅读<a href=\"https://ask.dcloud.net.cn/protocol.html\">《服务协议》</a>和<a href=\"https://ask.dcloud.net.cn/protocol.html\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept": "同意",
"buttonRefuse": "暂不同意"
}
},
"compatible": {
"ignoreVersion": true
},
"usingComponents": true,
"nvueStyleCompiler": "uni-app",
"compilerVersion": 3,
"splashscreen": {
"alwaysShowBeforeRender": true,
"waiting": true,
"autoclose": true,
"delay": 0
},
"modules": {
"Fingerprint": {
},
"Share": {
},
"OAuth": {
},
"FaceID": {
},
"Push": {
}
},
"distribute": {
"android": {
"permissions": [
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"abiFilters": [
"armeabi-v7a",
"arm64-v8a",
"x86"
]
},
"ios": {
"capabilities": {
"entitlements": {
"com.apple.developer.associated-domains": [
"applinks:static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com"
]
}
}
},
"sdkConfigs": {
"oauth": {
"apple": {
},
"weixin": {
"appid": "wxffdd8fa6ec4ef2a0",
"appsecret": "",
"UniversalLinks": "https://static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com/uni-universallinks/__UNI__03B096E"
},
"univerify": {
}
},
"usingComponents" : true,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : true,
"autoclose" : true,
"delay" : 0
"ad": {
},
"modules" : {
"Fingerprint" : {},
"Share" : {},
"OAuth" : {},
"FaceID" : {},
"Push" : {}
"share": {
"weixin": {
"appid": "wxffdd8fa6ec4ef2a0",
"UniversalLinks": "https://static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com/uni-universallinks/__UNI__03B096E"
}
},
"distribute" : {
"android" : {
"permissions" : [
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ]
},
"ios" : {
"capabilities" : {
"entitlements" : {
"com.apple.developer.associated-domains" : [ "applinks:static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com" ]
}
}
},
"sdkConfigs" : {
"oauth" : {
"apple" : {},
"weixin" : {
"appid" : "wxffdd8fa6ec4ef2a0",
"appsecret" : "",
"UniversalLinks" : "https://static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com/uni-universallinks/__UNI__03B096E"
},
"univerify" : {}
},
"ad" : {},
"share" : {
"weixin" : {
"appid" : "wxffdd8fa6ec4ef2a0",
"UniversalLinks" : "https://static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com/uni-universallinks/__UNI__03B096E"
}
},
"geolocation" : {},
"push" : {
"unipush" : {}
},
"payment" : {}
}
"geolocation": {
},
"nvueLaunchMode" : ""
},
"quickapp" : {},
"mp-weixin" : {
"appid" : "wx81dbb061d2258234",
"setting" : {
"urlCheck" : false,
"es6" : false
"push": {
"unipush": {
}
},
"usingComponents" : true,
"betterScopedSlots" : true
},
"mp-alipay" : {
"usingComponents" : true
},
"mp-baidu" : {
"usingComponents" : true
},
"mp-toutiao" : {
"usingComponents" : true
},
"uniStatistics" : {
"enable" : false
"payment": {
}
}
},
"h5" : {
"template" : ""
"nvueLaunchMode": ""
},
"quickapp": {
},
"mp-weixin": {
"appid": "",
"setting": {
"urlCheck": false,
"es6": false
},
"_spaceID" : "76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e"
}
"usingComponents": true,
"betterScopedSlots": true
},
"mp-alipay": {
"usingComponents": true
},
"mp-baidu": {
"usingComponents": true
},
"mp-toutiao": {
"usingComponents": true
},
"uniStatistics": {
"enable": false
},
"h5": {
"template": ""
},
"_spaceID": "76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e"
}
\ No newline at end of file
{
"id": "uni-starter",
"displayName": "uni-starter",
"version": "1.0.31",
"version": "1.0.32",
"description": "云端一体应用快速开发基本项目模版",
"keywords": [
"uni-starter",
......
......@@ -9,10 +9,10 @@
<text class="tip">扫描二维码,您的朋友也可以下载{{about.appName}}客户端</text>
</view>
<view class="copyright">
<template v-for="(agreement,index) in about.agreements">
<view class="agreement-box" v-for="(agreement,index) in about.agreements" :key="index">
<text class="agreement" @click="navigateTo(agreement)">{{agreement.title}}</text>
<text class="hint" v-if="about.agreements.length-1>index"></text>
</template>
</view>
<text class="hint">Copyright © {{year}}</text>
<text class="hint">{{about.company}}</text>
</view>
......@@ -154,11 +154,15 @@ import uniShare from 'uni_modules/uni-share/js_sdk/uni-share.js';
left: 0;
position: fixed;
}
.agreement-box{
justify-content: center;
}
.agreement {
color:#2285ff;
font-size:26rpx;
}
.hint {
text-align: center;
color:#999999;
font-size:26rpx;
}
......
......@@ -117,7 +117,7 @@
justify-content: center;
}
.quickLoginBtn{
margin-bottom:20px;
margin:20px 0;
width: 450rpx;
}
</style>
\ No newline at end of file
......@@ -78,7 +78,7 @@
"event": 'getScore',
"icon": "paperplane"
}
// #ifndef H5
// #ifdef APP-PLUS
,{
"title": '分销推荐',
"event": 'share',
......
......@@ -31,7 +31,7 @@ module.exports = {
根据数组的第0项,决定登录方式的第一优先级。
*/
// "login": ["username","smsCode","univerify", "weixin", "apple"],
"login": ["username","weixin","apple","smsCode"],
"login": ["weixin","smsCode","univerify", "username", "apple"],
},
//关于应用
"about": {
......
......@@ -23,8 +23,8 @@
"mp-weixin": {
"oauth": {
"weixin": {
"appid": "wx81dbb061d2258234",
"appsecret": "51977820eb14cd71377d4048a1b4754e"
"appid": "微信小程序登录所用的appid、appsecret需要在对应的小程序管理控制台获取",
"appsecret": "微信小程序后台获取的appsecret"
}
}
},
......
......@@ -57,14 +57,20 @@
],
"abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ]
},
"ios" : {},
"ios" : {
"capabilities" : {
"entitlements" : {
"com.apple.developer.associated-domains" : [ "applinks:static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com" ]
}
}
},
"sdkConfigs" : {
"oauth" : {
"apple" : {},
"weixin" : {
"appid" : "wxffdd8fa6ec4ef2a0",
"appsecret" : "",
"UniversalLinks" : ""
"UniversalLinks" : "https://static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com/uni-universallinks/__UNI__03B096E"
},
"univerify" : {}
},
......@@ -72,7 +78,7 @@
"share" : {
"weixin" : {
"appid" : "wxffdd8fa6ec4ef2a0",
"UniversalLinks" : ""
"UniversalLinks" : "https://static-76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e.bspapp.com/uni-universallinks/__UNI__03B096E"
}
},
"geolocation" : {},
......@@ -108,5 +114,6 @@
},
"h5" : {
"template" : ""
}
},
"_spaceID" : "76ce2c5e-31c7-4d81-8fcf-ed1541ecbc6e"
}
{
"passwordSecret": "passwordSecret-demo",
"tokenSecret": "tokenSecret-demo",
"tokenExpiresIn": 7200,
"tokenExpiresThreshold": 600,
"passwordErrorLimit": 6,
"bindTokenToDevice": false,
"passwordErrorRetryTime": 3600,
"autoSetInviteCode": false,
"forceInviteCode": false,
"app-plus": {
"tokenExpiresIn": 2592000,
"oauth": {
"weixin": {
"appid": "填写来源微信开放平台https://open.weixin.qq.com/创建的应用的appid",
"appsecret": "填写来源微信开放平台https://open.weixin.qq.com/创建的应用的appsecret"
},
"apple": {
"bundleId": "苹果开发者后台获取的bundleId"
}
}
},
"mp-weixin": {
"oauth": {
"weixin": {
"appid": "微信小程序登录所用的appid、appsecret需要在对应的小程序管理控制台获取",
"appsecret": "微信小程序后台获取的appsecret"
}
}
},
"mp-alipay": {
"oauth": {
"alipay": {
"appid": "支付宝小程序登录用到的appid、privateKey请参考支付宝小程序的文档进行设置或者获取,https://opendocs.alipay.com/open/291/105971#LDsXr",
"privateKey": "支付宝小程序登录用到的appid、privateKey请参考支付宝小程序的文档进行设置或者获取,https://opendocs.alipay.com/open/291/105971#LDsXr"
}
}
},
"service": {
"sms": {
"name": "应用名称,对应短信模版的name",
"codeExpiresIn": 300,
"smsKey": "短信密钥key,开通短信服务处可以看到",
"smsSecret": "短信密钥secret,开通短信服务处可以看到"
},
"univerify": {
"appid": "当前应用的appid,使用云函数URL化,此项必须配置",
"apiKey": "apiKey 和 apiSecret 在开发者中心获取,开发者中心:https://dev.dcloud.net.cn/uniLogin/index?type=0,文档:https://ask.dcloud.net.cn/article/37965",
"apiSecret": ""
}
}
}
\ No newline at end of file
{
"passwordSecret": "passwordSecret-demo",
"tokenSecret": "tokenSecret-demo",
"tokenExpiresIn": 7200,
"tokenExpiresThreshold": 600,
"passwordErrorLimit": 6,
"bindTokenToDevice": false,
"passwordErrorRetryTime": 3600,
"autoSetInviteCode": false,
"forceInviteCode": false,
"app-plus": {
"tokenExpiresIn": 2592000,
"oauth": {
"weixin": {
"appid": "wxffdd8fa6ec4ef2a0",
"appsecret": "6c9119430d7be0a147bcbbb73ef33acf"
},
"apple": {
"bundleId": "苹果开发者后台获取的bundleId"
}
}
},
"mp-weixin": {
"oauth": {
"weixin": {
"appid": "wx81dbb061d2258234",
"appsecret": "51977820eb14cd71377d4048a1b4754e"
}
}
},
"mp-alipay": {
"oauth": {
"alipay": {
"appid": "支付宝小程序登录用到的appid、privateKey请参考支付宝小程序的文档进行设置或者获取,https://opendocs.alipay.com/open/291/105971#LDsXr",
"privateKey": "支付宝小程序登录用到的appid、privateKey请参考支付宝小程序的文档进行设置或者获取,https://opendocs.alipay.com/open/291/105971#LDsXr"
}
}
},
"service": {
"sms": {
"name": "应用名称,对应短信模版的name",
"codeExpiresIn": 300,
"smsKey": "短信密钥key,开通短信服务处可以看到",
"smsSecret": "短信密钥secret,开通短信服务处可以看到"
},
"univerify": {
"appid": "当前应用的appid,使用云函数URL化,此项必须配置",
"apiKey": "apiKey 和 apiSecret 在开发者中心获取,开发者中心:https://dev.dcloud.net.cn/uniLogin/index?type=0,文档:https://ask.dcloud.net.cn/article/37965",
"apiSecret": ""
}
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册