Web端访问微信小程序云数据库

撰写背景:

用微信小程序云开发做了一个与web管理平台配套的微信小程序,Web端需要对接(访问)到云环境的云数据库。

开门见山:

在微信开发者工具里先把云开发控制台打开,

设置->权限设置->未登录用户访问云资源权限设置勾上

再把所有的集合权限改为读、写均true

首先把这个微信开放文档Web SDK包拷到Web项目里

我拷的是下面这个版本的:

https://res.wx.qq.com/open/js/cloudbase/1.1.0/cloud.js

可以命名为cloud.js

然后在需要用到的html进行CDN引入(src里写你自己考下来这个包的相对路径)

    <script src="js/cloud.js"></script>

在同一html里继续

<script>
        //初始化
        let first = function(callback) {
            var c1 = new cloud.Cloud({
                //必填,表示是未登录模式
                identityless: true,
                //资源方 AppID
                resourceAppid: '小程序appid',
                //资源方环境 ID
                resourceEnv: '云环境id',
            })
            c1.init()
                //回调
            callback(c1)
        };
        //完成初始化后再回调,即可访问云数据库
        let callback = function(c1) {
            // 我个人不喜欢写云函数,所以直接写在Web这里做操作
            // 你要访问的各种操作写在这个callback函数里即可,这里以查询users表为例
            const db = c1.database();
            db.collection('users').get({
                success: res => {
                    console.log(res.data);
                },
                fail: res => {
                    console.log(res);
                }
            })
        };
        first(callback);
    </script>

大功告成:

注意:不要用盘符方式去打开html,要用live开启服务的方式去打开html,否则会报跨域错误

看了很多文章,走了挺多弯路,先是看初始化 | 云开发 CloudBase - 一站式后端云服务,npm安装好@cloudbase/js-sdk之后在script里写import一直报错:“Uncaught SyntaxError: Cannot use import statement outside a module”,也试了在script标签里加type="module",没卵用。

又试了CDN引入,结果好家伙报404 NOT FOUND。

总的来说对新手不是很友好。

然后又看见初始化 | 云开发 CloudBase - 一站式后端云服务这里引入用

const cloudbase = require("@cloudbase/js-sdk");

然后又报错:require is not defined。

最后才幸运地找到下面这篇文章,帮助我成功在Web访问到云数据库。希望这篇文章能给大家一点帮助哈。

参考文章:web端获取微信小程序云数据库数据实现增删改查等操作_DDDHL_的博客-CSDN博客_微信小程序获取云数据库数据

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值