微信小程序云开发实现云数据库读写权限


Posted in Javascript onMay 17, 2019

一、问题场景

在做图片点赞、查看量的时候,非管理员给非自己上传(创建)的图片点赞,更新数据失败,失败原因是没有修改数据权限

二、问题描述

云数据库中的读写权限是有严格规定的
非管理员非创建者,没办法写入数据(更新数据)

微信小程序云开发实现云数据库读写权限

三、详细解决办法

使用云函数更新数据

刚开始还是不怎么了解云函数,只用自动生成的login 来获取openid,并不知道其他用法,看了好久才明白

1、在开发者工具上新建node.js云函数

2、上代码

这是云函数index.js 内容

// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init()
const db = cloud.database();

// 云函数入口函数
exports.main = async (event, context) => {
  try{
    return await db.collection("image").doc(event._id).update({
      data:{
        praise: event.dianza
      }
    })
  }catch(e){
    console.error(e)
  }
}

这是调用云函数js

wx.cloud.callFunction({
   name: '你新建的云函数名字',
   data:{
    _id: obj._id,
    dianza: dianza
   },
   success: res => {
      console.log('更新数据成功')
   }
})

obj._id 就是当前数据的 id
我的点赞逻辑是把当前用户openid 添加到dianza数组中

3、上传并部署(最好安装云端依赖)

安装本地依赖是在当前云函数的文件夹下运行 npm install --save wx-server-sdk@latest

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript hashtable 修正版 下载
Dec 30 Javascript
javascript使用定时函数实现跳转到某个页面
Dec 25 Javascript
Select标签下拉列表二级联动级联实例代码
Feb 07 Javascript
解决checkbox的attr(checked)一直为undefined问题
Jun 16 Javascript
Javascript中的默认参数详解
Oct 22 Javascript
10条建议帮助你创建更好的jQuery插件
May 18 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
Apr 14 Javascript
jQuery插件扩展测试实例
Jun 21 Javascript
jQuery代码实现实时获取时间
Jan 29 Javascript
JavaScript输入分钟、秒倒计时技巧总结(附代码)
Aug 17 Javascript
一文了解Vue中的nextTick
May 06 Javascript
vue实现锚点定位功能
Jun 29 Vue.js
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
May 17 #Javascript
微信小程序云开发实现数据添加、查询和分页
May 17 #Javascript
js常用正则表达式集锦
May 17 #Javascript
Angular请求防抖处理第一次请求失效问题
May 17 #Javascript
vue cli 3.0 搭建项目的图文教程
May 17 #Javascript
小程序云开发如何实现图片上传及发表文字
May 17 #Javascript
tsconfig.json配置详解
May 17 #Javascript
You might like
解析php中const与define的应用区别
2013/06/18 PHP
PHP date()函数警告: It is not safe to rely on the system解决方法
2014/08/20 PHP
php中define用法实例
2015/07/30 PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
2017/11/14 PHP
Extjs中ComboBoxTree实现的下拉框树效果(自写)
2013/05/28 Javascript
原生js和jQuery随意改变div属性style的名称和值
2014/10/22 Javascript
js获取当前日期前七天的方法
2015/02/28 Javascript
自定义百度分享的分享按钮
2015/03/18 Javascript
基于JS分页控件实现简单美观仿淘宝分页按钮效果
2016/11/07 Javascript
详解AngularJS之$window窗口对象
2018/01/17 Javascript
jQuery实现ajax的嵌套请求案例分析
2019/02/16 jQuery
微信小游戏之使用three.js 绘制一个旋转的三角形
2019/06/10 Javascript
js实现窗口全屏示例详解
2019/09/17 Javascript
ES6常用小技巧总结【去重、交换、合并、反转、迭代、计算等】
2019/12/21 Javascript
vue.js自定义组件实现v-model双向数据绑定的示例代码
2020/01/08 Javascript
package.json中homepage属性的作用详解
2020/03/11 Javascript
[54:29]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第二场
2018/04/09 DOTA
利用Python开发微信支付的注意事项
2016/08/19 Python
python实现批量修改文件名代码
2017/09/10 Python
Python实现简单网页图片抓取完整代码实例
2017/12/15 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
pandas DataFrame行或列的删除方法的实现示例
2019/08/02 Python
python统计函数库scipy.stats的用法解析
2020/02/25 Python
Django分组聚合查询实例分享
2020/04/29 Python
Python网络爬虫四大选择器用法原理总结
2020/06/01 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
沪江旗下的海量优质课程平台:沪江网校
2017/11/07 全球购物
高尔夫球鞋、服装、手套和装备:FootJoy
2018/12/15 全球购物
运动会表扬稿大全
2014/01/16 职场文书
中等生评语大全
2014/05/04 职场文书
安全技术说明书
2014/05/09 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
2014年超市工作总结
2014/11/19 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
redis 限制内存使用大小的实现
2021/05/08 Redis