返回
微信公众号HTTP调用云开发,无需配置云开发能力
前端
2023-12-13 23:40:35
前言
这是我参与更文挑战的第4天,活动详情查看:更文挑战
写在前面:
- 近期使用腾讯云cloudbase开发了微信公众号H5应用;
- 使用它主要看重了它的一站式后台管理,只要做一个简单的配置就能有一个TCB后台用于管理自己的H5页面;
- 但通过最近几天使用,发现它虽然配置简单,但有些配置还是比较麻烦的,比如云开发配置,针对不同的环境不同的平台,还需要配置相关的证书文件,还是挺麻烦的;
后来在微信开放社区上找到了一个方法,实现无需配置云开发能力即可调用云开发的云函数、数据库、文件存储等能力。
本文分享如何在微信公众号通过HTTP调用云开发。
准备工作
创建云开发项目
- 登录腾讯云控制台,并选择要使用的地域
- 单击“新建项目”,并输入项目名称
- 选择“空白项目”,然后单击“创建”
初始化云开发项目
- 在控制台左侧菜单中,单击“开发管理”
- 单击“初始化项目”
- 选择要用于云开发的应用程序类型,然后单击“初始化”
获取云开发环境ID
- 在控制台左侧菜单中,单击“概览”
- 找到“环境 ID”字段,并复制其值
获取云开发Secret ID和Secret Key
- 在控制台左侧菜单中,单击“设置”
- 单击“凭证管理”选项卡
- 在“Secret ID 和 Secret Key”部分中,找到“Secret ID”和“Secret Key”字段,并复制其值
创建云函数
- 在控制台左侧菜单中,单击“云函数”
- 单击“新建函数”
- 选择“HTTP 函数”,然后单击“下一步”
- 输入函数名称,然后单击“下一步”
- 选择要使用的运行时环境,然后单击“下一步”
- 在“代码”选项卡中,粘贴以下代码:
const cloud = require('tcb-admin-node');
exports.main = async (event, context) => {
// 初始化云开发环境
cloud.init({
env: process.env.TCB_ENV_ID,
secretId: process.env.TCB_SECRET_ID,
secretKey: process.env.TCB_SECRET_KEY,
});
// 调用云开发的云函数
const result = await cloud.callFunction({
name: 'helloWorld',
data: {
name: 'John Doe',
},
});
// 返回结果
return result;
};
- 在“环境变量”选项卡中,添加以下环境变量:
名称 | 值 |
---|---|
TCB_ENV_ID | 云开发环境ID |
TCB_SECRET_ID | 云开发Secret ID |
TCB_SECRET_KEY | 云开发Secret Key |
- 单击“保存”,然后单击“部署”
在微信公众号中使用云开发
创建微信公众号应用
- 登录微信开放平台,并选择要使用的公众号
- 在左侧菜单中,单击“设置”
- 单击“开发者设置”选项卡
- 在“基本配置”部分中,找到“AppID”和“AppSecret”字段,并复制其值
配置微信公众号应用
- 在控制台左侧菜单中,单击“应用管理”
- 单击“新建应用”
- 选择“公众号应用”,然后单击“下一步”
- 输入应用名称,然后单击“下一步”
- 在“公众号配置”部分中,粘贴微信公众号的AppID和AppSecret,然后单击“下一步”
- 在“授权回调域名”部分中,输入以下网址:
https://tcb-http-request-xxxxxxxx.tcb.qcloud.la/hello-world
- 其中,“xxxxxxxx”是你的云开发环境ID
- 单击“完成”
在微信公众号中使用云开发
- 在微信公众号中,发送消息“hello world”
- 微信公众号将调用云开发的云函数,并返回结果
总结
本文分享了如何在微信公众号中使用云开发,无需配置云开发能力。通过这种方法,您可以轻松地调用云开发的云函数、数据库、文件存储等能力。