diff --git a/template.h5.html b/template.h5.html index 8b54dea0bd5254d2e7863659c9220a11bdae4d91..a9de5dbfba99b08e9696ad271ee49adb7238c8dd 100644 --- a/template.h5.html +++ b/template.h5.html @@ -40,6 +40,7 @@ document.querySelector('#gg').addEventListener('click',e=>{ console.log(e); alert(12) + window.location.href = "https://m3w.cn/uniapp" }) },1000) diff --git a/uni_modules/opendb-feedback/uniCloud/database/opendb-feedback.schema.json b/uni_modules/opendb-feedback/uniCloud/database/opendb-feedback.schema.json deleted file mode 100644 index 0decc34aab2a31cb95a10fc2665f98a437493e3c..0000000000000000000000000000000000000000 --- a/uni_modules/opendb-feedback/uniCloud/database/opendb-feedback.schema.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "bsonType": "object", - "permission": { - "read": "doc.is_reply == false", - "create": true, - "update": false, - "delete": false - }, - "properties": { - "_id": { - "description": "ID,系统自动生成" - }, - "user_id": { - "bsonType": "string", - "description": "留言反馈用户ID\/回复留言用户ID,参考uni-id-users表", - "foreignKey": "uni-id-users._id", - "forceDefaultValue": { - "$env": "uid" - } - }, - "title": { - "description": "反馈标题(用于列表展示)" - }, - "ip": { - "forceDefaultValue": { - "$env": "clientIP" - } - }, - "create_date": { - "bsonType": "timestamp", - "description": "留言时间\/回复留言时间", - "forceDefaultValue": { - "$env": "now" - } - }, - "content": { - "bsonType": "string", - "description": "留言内容\/回复内容", - "trim": "right" - }, - "imgs": { - "bsonType": "array", - "description": "图片列表" - }, - "is_reply": { - "bsonType": "bool", - "description": "是否是回复类型" - }, - "feedback_id": { - "bsonType": "string", - "description": "被回复留言ID" - }, - "contact": { - "bsonType": "string", - "description": "联系人", - "trim": "both" - }, - "mobile": { - "bsonType": "string", - "description": "联系电话", - "trim": "both" - }, - "reply_count": { - "bsonType": "int", - "description": "被回复条数" - } - } -} diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/index.js b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/index.js deleted file mode 100644 index 250f4b182042bdc84f984a4144ef4e7568095e87..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/index.js +++ /dev/null @@ -1,224 +0,0 @@ -'use strict'; -let uniID = require('uni-id') -const uniCaptcha = require('uni-captcha') -const db = uniCloud.database() -const dbCmd = db.command -exports.main = async (event, context) => { - /** - * UNI_WYQ:这里的uniID换成新的,保证多人访问不会冲突 - */ - uniID = uniID.createInstance({ - context - }) - //event为客户端上传的参数 - console.log('event : ' + JSON.stringify(event)) - let params = event.params || {} - - //防止黑客恶意破解登陆,连续登陆失败一定次数后,需要用户提供验证码 - const getNeedCaptcha = async () => { - //当用户最近“2小时内(recordDate)”登陆失败达到2次(recordSize)时。要求用户提交验证码 - const now = Date.now(), - recordDate = 120 * 60 * 1000, - recordSize = 2; - const uniIdLogCollection = db.collection('uni-id-log') - let recentRecord = await uniIdLogCollection.where({ - deviceId: params.deviceId || context.DEVICEID, - create_date: dbCmd.gt(now - recordDate), - type: 'login' - }) - .orderBy('create_date', 'desc') - .limit(recordSize) - .get(); - return recentRecord.data.filter(item => item.state === 0).length === recordSize; - } - - //设置某些模块不需要token(也就是登陆成功后)才能操作,如果需要token就获取当前操作账户的uid - let noCheckAction = [ - 'register', 'checkToken','login', 'logout', 'sendSmsCode', - 'createCaptcha', 'verifyCaptcha','refreshCaptcha', 'inviteLogin', - 'login_by_weixin','login_by_univerify','login_by_apple','loginBySms' - ] - let payload; - console.log(event.action); - if (!noCheckAction.includes(event.action)) { - if (!event.uniIdToken) { - return { - code: 403, - msg: '缺少token' - } - } - payload = await uniID.checkToken(event.uniIdToken) - if (payload.code && payload.code > 0) { - return payload - } - params.uid = payload.uid - } - - - //记录成功登陆的日志 - const loginLog = async (res = {}, type = 'login') => { - const now = Date.now() - const uniIdLogCollection = db.collection('uni-id-log') - let logData = { - deviceId: params.deviceId || context.DEVICEID, - ip: params.ip || context.CLIENTIP, - type, - ua: context.CLIENTUA, - create_date: now - }; - - Object.assign(logData, - res.code === 0 ? { - user_id: res.uid, - state: 1 - } : { - state: 0 - }) - - return uniIdLogCollection.add(logData) - } - - - - let res = {} - switch (event.action) { - case 'register': - res = await uniID.register(params); - break; - case 'login': - let passed = false; - let needCaptcha = await getNeedCaptcha(); - - if (needCaptcha) { - res = await uniCaptcha.verify(params) - if (res.code === 0) passed = true; - } - - if (!needCaptcha || passed) { - res = await uniID.login({ - ...params, - queryField: ['username', 'email', 'mobile'] - }); - await loginLog(res); - needCaptcha = await getNeedCaptcha(); - } - - res.needCaptcha = needCaptcha; - break; - case 'login_by_weixin': - res = await uniID.loginByWeixin(params); - await uniID.updateUser({ - uid: params.uid, - username:"微信用户" - }); - res.userInfo.username = "微信用户" - loginLog(res) - break; - case 'login_by_univerify': - res = await uniID.loginByUniverify(params) - break; - case 'login_by_apple': - res = await uniID.loginByApple(params) - loginLog(res) - break; - case 'checkToken': - res = await uniID.checkToken(event.uniIdToken); - break; - case 'logout': - res = await uniID.logout(event.uniIdToken) - break; - case 'sendSmsCode': - // 简单限制一下客户端调用频率 - const ipLimit = await db.collection('uni-verify').where({ - ip: context.CLIENTIP, - created_at: dbCmd.gt(Date.now() - 60000) - }).get() - if (ipLimit.data.length > 0) { - return { - code: 429, - msg: '请求过于频繁' - } - } - const templateId = '11753' // 替换为自己申请的模板id - if (!templateId) { - return { - code: 500, - msg: 'sendSmsCode需要传入自己的templateId,参考https://uniapp.dcloud.net.cn/uniCloud/uni-id?id=sendsmscode' - } - } - const randomStr = '00000' + Math.floor(Math.random() * 1000000) - const code = randomStr.substring(randomStr.length - 6) - res = await uniID.sendSmsCode({ - mobile: params.mobile, - code, - type: params.type, - templateId - }) - break; - case 'loginBySms': - if (!params.code) { - return { - code: 500, - msg: '请填写验证码' - } - } - if (!/^1\d{10}$/.test(params.mobile)) { - return { - code: 500, - msg: '手机号码填写错误' - } - } - res = await uniID.loginBySms(params) - loginLog(res) - break; - case 'inviteLogin': - if (!params.code) { - return { - code: 500, - msg: '请填写验证码' - } - } - res = await uniID.loginBySms({ - ...params, - type: 'register' - }) - break; - case 'getInviteCode': - res = await uniID.getUserInfo({ - uid: params.uid, - field: ['my_invite_code'] - }) - if (res.code === 0) { - res.myInviteCode = res.userInfo.my_invite_code - delete res.userInfo - } - break; - case 'getInvitedUser': - res = await uniID.getInvitedUser(params) - break; - case 'updatePwd': - res = await uniID.updatePwd({ - uid: params.uid, - ...params - }) - break; - case 'createCaptcha': - res = await uniCaptcha.create(params) - break; - case 'refreshCaptcha': - res = await uniCaptcha.refresh(params) - break; - case 'resetPwd': - res = await uniID.resetPwd({...params,"uid":payload.uid}) - break; - default: - res = { - code: 403, - msg: '非法访问' - } - break; - } - - //返回数据给客户端 - return res -}; diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package-lock.json b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package-lock.json deleted file mode 100644 index 19af4cbc10b520fbd82b542d018043b149a39798..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package-lock.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "user-center", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "uni-captcha": { - "version": "file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha" - }, - "uni-config-center": { - "version": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center" - }, - "uni-id": { - "version": "file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id", - "requires": { - "uni-config-center": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center" - }, - "dependencies": { - "uni-config-center": { - "version": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center" - } - } - } - } -} diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package.json b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package.json deleted file mode 100644 index 0d50d88175e3e3b187d207dea4f3380a851e72af..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "user-center", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "", - "license": "ISC", - "dependencies": { - "uni-captcha": "file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha", - "uni-config-center": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center", - "uni-id": "file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id" - } -} diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/index.js b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/index.js deleted file mode 100644 index f52b2416b5a418af55ccd4a4ffe9eee4e6637cc8..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/index.js +++ /dev/null @@ -1,82 +0,0 @@ -'use strict'; -const uniID = require('uni-id') -const uniCaptcha = require('uni-captcha') -const db = uniCloud.database() -const dbCmd = db.command -let params,context,res; -class User { - async quickLogin(){ - let {access_token,openid,type} = params - switch (type){ - case 'weixin': - let userinfo_res = await uniCloud.httpclient.request('https://api.weixin.qq.com/sns/userinfo', - { - method: 'GET', - dataType:"json", - data:{ access_token,openid} - }); - return userinfo_res.data//根据access_token,openid得到userinfo - //检查是否已经注册... - break; - case 'univerify': - return uniID.loginByUniverify({access_token,openid}) - break; - case 'apple': - return await uniID.loginByApple(params) - break; - default: - return {"code":100,"msg":"暂不提供"+type+"登陆的云端接口演示"} - break; - } - } - async sendSmsCode(){ - // 简单限制一下客户端调用频率 - const ipLimit = await db.collection('uni-verify').where({ - ip: context.CLIENTIP, - created_at: dbCmd.gt(Date.now() - 60000) - }).get() - if (ipLimit.data.length > 0) { - return { - code: 429, - msg: '请求过于频繁' - } - } - const templateId = '11753' // 替换为自己申请的模板id - if (!templateId) { - return { - code: 500, - msg: 'sendSmsCode需要传入自己的templateId,参考https://uniapp.dcloud.net.cn/uniCloud/uni-id?id=sendsmscode' - } - } - const randomStr = '00000' + Math.floor(Math.random() * 1000000) - const code = randomStr.substring(randomStr.length - 6) - return await uniID.sendSmsCode({ - mobile: params.mobile, - code, - type: params.type, - templateId - }) - } -} -const userClass = new User(); -exports.main = async (event, ctx) => { - [{params},context] = [event,ctx] - //1.判断需要token的action是否有token - /*let noCheckAction = ['register', 'loginByWeixin', 'checkToken','login', 'logout', 'sendSmsCode','loginBySms', 'inviteLogin', 'loginByUniverify','loginByApple', 'createCaptcha', 'verifyCaptcha','refreshCaptcha'] - if(!noCheckAction.includes(event.action)) { - if (!event.uniIdToken) { - return {"code":403,"msg":"缺少token"} - } - let payload = {} - payload = await uniID.checkToken(event.uniIdToken) - if (payload.code && payload.code > 0) { - return payload - } - params.uid = payload.uid - }*/ - try{ - return await userClass[event.action]()||res; - }catch(err){ - return {"code":404,"msg":err} - } -} \ No newline at end of file diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/package-lock.json b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/package-lock.json deleted file mode 100644 index 1409abcb14d28a497bbe175252bddae01557d41d..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/package-lock.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "user", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "uni-captcha": { - "version": "file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha" - }, - "uni-config-center": { - "version": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center" - }, - "uni-id": { - "version": "file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id", - "requires": { - "uni-config-center": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center" - }, - "dependencies": { - "uni-config-center": { - "version": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center" - } - } - } - } -} diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/package.json b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/package.json deleted file mode 100644 index 965bf274cb22107b31b692a78c0e33eaee48e095..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "user", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "", - "license": "ISC", - "dependencies": { - "uni-captcha": "file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha", - "uni-config-center": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center", - "uni-id": "file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id" - } -} diff --git a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/user.param.json b/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/user.param.json deleted file mode 100644 index f0ec7f1310f9e40c0fcd8e1ea8297d311e08d999..0000000000000000000000000000000000000000 --- a/uni_modules/uni-quick-login/uniCloud/cloudfunctions/user/user.param.json +++ /dev/null @@ -1,8 +0,0 @@ -// 本文件中的json内容将在云函数【运行】时作为参数传给云函数。 -// 配置教程参考:https://uniapp.dcloud.net.cn/uniCloud/quickstart?id=runparam -{ - "action": "sendSmsCode", - "params": { - "phone":"17769516081" - } -}