惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

AI
AI
TaoSecurity Blog
TaoSecurity Blog
H
Heimdal Security Blog
Help Net Security
Help Net Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Microsoft Azure Blog
Microsoft Azure Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
The Cloudflare Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
大猫的无限游戏
大猫的无限游戏
N
News | PayPal Newsroom
V2EX - 技术
V2EX - 技术
博客园 - 【当耐特】
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Secure Thoughts
C
CERT Recently Published Vulnerability Notes
罗磊的独立博客
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Privacy & Cybersecurity Law Blog
有赞技术团队
有赞技术团队
S
Schneier on Security
S
SegmentFault 最新的问题
Google Online Security Blog
Google Online Security Blog
H
Hacker News: Front Page
The Last Watchdog
The Last Watchdog
Schneier on Security
Schneier on Security
PCI Perspectives
PCI Perspectives
IT之家
IT之家
Project Zero
Project Zero
博客园 - 司徒正美
P
Privacy International News Feed
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Jina AI
Jina AI
Security Latest
Security Latest
Hacker News - Newest:
Hacker News - Newest: "LLM"
腾讯CDC
C
CXSECURITY Database RSS Feed - CXSecurity.com
阮一峰的网络日志
阮一峰的网络日志
C
Check Point Blog
aimingoo的专栏
aimingoo的专栏
V
Vulnerabilities – Threatpost
W
WeLiveSecurity
NISL@THU
NISL@THU
Webroot Blog
Webroot Blog
N
Netflix TechBlog - Medium
L
Lohrmann on Cybersecurity

LimeBit

我写了一个 Windows 灵动岛 - LimeBit 记录解决 git 拉取速度慢的解决办法 - LimeBit 当年全网疯找的100%晴女网站,我给它做了个完美复刻版! - LimeBit 回顾:微信小程序用户授权登录 - LimeBit Git:启程 - LimeBit VUE3:初入门槛 - LimeBit 海内存知己,天涯若比邻。欢迎光临我的博客! - LimeBit 内网穿透 | frp 自建内网穿透服务操作心得 - LimeBit 实践记录:《企业多业务网络融合部署》—— IP路由通信 - LimeBit 1Panel - 食用方法以及心得 - LimeBit
Web与微信云开发交互:SDK小程序数据库操作 - LimeBit
Ryen · 2025-07-30 · via LimeBit
画板 1.png
画板 1.png

我在开发自己小程序的时候,一直觉得,如果后台管理页面也做在小程序内,未免也太密集太复杂了,其次数据展示与操作没有在WEB端来得那么清晰。

如果能使用WEB端做小程序后台,不论是交互还是体验,都能更上一层楼。

所以今天要解决的,是如何从小程序云开发调用云数据库的数据,加载到WEB页面,更进阶一点,如何操作数据库增删查改。

一、微信小程序 Web SDK

Web SDK 在 Web 中使用,可以访问云开发资源,既支持公众号登录态、也支持未登录模式。

详细官方文档:微信开发文档 SDK

未登录模式使用注意事项

  1. 出于安全考虑,云环境默认不支持未登录下访问,需首先在 ”云开发控制台 - 设置 - 全局设置/权限设置“ 中开启(需开发者工具 1.03.2006042 或以上)
  2. 未登录模式必须搭配安全规则使用,若数据库、存储的权限设置为简易权限配置而不是安全规则配置,未登录用户将无法访问云资源
  3. 在未登录模式访问时,安全规则的 auth 变量将为空,可以以此判断未登录请求

二、完整实践操作流程

下面我以我在自己项目开发时写的代码做示例:

1. 开启云数据库的访问权限
微信开发者工具->云开发控制台->设置->权限设置

2025-07-30T08:06:06.png
2025-07-30T08:06:06.png

2. 编写云函数
云函数作为中间层,连接着web与云数据库的通信,我们调用云函数返回数据。

先确保你在云数据库有一个需要获取数据的表,例如 orders 集合

创建一个云函数,例如名为 getListYes,环境ID改为你自己的。

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

cloud.init({
  //环境 ID
  env:"cloud1-123123123123test"
})

// 云函数入口函数
exports.main = async (event, context) => {
  //orders是我要取出的表名字
  return cloud.database().collection('orders').get({
    success(res){
      return res          //查询成功返回数据
    },
    fail(err){
      return err
    }
  })
}

3. 在web页面引入SDK
必须引入此库,否则无法与云开发通信!

<script src="https://web-9gikcbug35bad3a8-1304825656.tcloudbaseapp.com/sdk/1.3.0/cloud.js"></script> 

4. web页面js
注意AppID和环境ID都要填,填自己的。

// 声明新的 cloud 实例
var c1 = new cloud.Cloud({
    // 必填,表示是未登录模式
    identityless: true,
    // 资源方 AppID 填自己的
    resourceAppid: 'wx09c28499e16d592e',
    // 资源方环境 ID    填自己的
    resourceEnv: 'cloud1-123123123123test',
})
//初始化
c1.init()
//初始化执行完再调用
setTimeout(() => {
    // 完成后正常使用资源方的已授权的云资源
    c1.callFunction({
        name: 'getListYes',             //调用的云函数名字
        success(res){
            console.log(res)
        }
    })
}, 1000);

刷新页面,在控制台就能看到返回的数据了。

由于这里使用 setTimeout ,返回数据会有延迟。

三、如何操作数据库增删查改?

同上,如法炮制在小程序里写相关操作的云函数,然后调用此云函数即可,记得返回状态是否成功。不会可以百度或AI。

CDN 地址列表(建议选最新的):