微信小程序中使用云函数调用豆包免费模型,部署云函数设置(触发器)执行每日自动生成书籍的文章赏析,完整过程

这篇文章的出发点,是学习ai工程师准备的,因为我没有后端所以我需要在小程序中调用豆包模型,实现一个定时任务场景,然后开始使用云函数,便于后面学习ai工程师将小程序云开发作为后端保存数据的初次使用,云函数...

学习:

  1. 云函数的开通、使用场景
  2. 云函数从文件创建、编写、到代码使用闭环
  3. 云函数的触发器(定时任务)的添加、
  4. 代码配置和控制面板无法配置成功触发器的原因
  5. 使用脚本安装,打开线上云函数的控制面板,编辑触发器、开通标准版会员(首月3元)、免费的接口超时只有3秒
  6. 云函数与云开发的关系(待补充)

案例功能:

  1. 在模拟器中点击【我的】→ 选择《资治通鉴》或《平凡之路》
  2. 首次访问会调用云函数生成文章
  3. 刷新页面会使用缓存(秒开)
  4. 点击"重新生成"可以手动刷新

一、云函数的介绍

  1. 小程序中什么场景用云函数?
    当遇到前端无法实现 / 不安全实现的场景时需使用云函数,例如:

    需要服务端能力(如数据库读写、文件存储、第三方 API 调用)

    需要安全环境(如获取用户 OpenId、支付签名、敏感数据处理)

    需要复杂计算(如数据统计、图片处理、算法逻辑)

  2. 云函数是什么?
    云函数是运行在微信云端的 Node.js 代码片段,具备以下特点:

    无需购买服务器,由微信自动弹性扩容

    拥有完整的服务端能力(文件读写、网络请求、数据库操作)

    与小程序天然集成,可直接调用微信开放接口

  3. 如何免费使用?
    登录微信后台、云开发、开通-扫描选择小程序,点击开通云开发环境,点击勾选确定等待生成云开发环境;

    3.1 扫描后,选择小程序开通

    3.2 勾选及创建、等待创建开发环境后,进入管理页


  4. 云函数业务场景举例

二、云函数的实践案例(实现小程序内每日自动生成赏析书籍的每日学习文章)

步骤 1:开通云开发
  1. 小程序后台开通云开发(上述已完成)
步骤 2:在项目目录下创建云函数文件【默认是没有云环境】
  1. xxxx结构和创建云函数目录暂时没贴...【是否有快捷操作】
步骤 3:上传云函数

如果创建项目选的是云函数的模板项目,则执行执行下面即可,反之项目开发过程中配置云函数,手动搭建云函数目录和配置文件,则需要结合步骤2、3并行操作

  1. 在微信开发者工具左侧,找到 cloudfunctions 目录
  2. 右键点击 generateDailyArticle 文件夹
  3. 选择 "上传并部署:云端安装依赖"
  4. 等待上传完成(状态变为 ✅)
步骤 4:关联云环境【可选-视情况定】
  1. 初始化创建项目,选择云开发的模板则自带云函数目录和环境
  2. 如果是后面项目开发过程中需要使用云开发环境,则只能通过自己创建云函数目录+配置云环境(简:手动创建云函数文件夹,需要配置云开环境,否则无法执行,云函数的右键部署并安装依赖的指令)

案例:单纯配置云函数目录和代码编写,这里直接右键云函数,部署并安装的明命令报错了

配置云环境:直接点云图标(云开发控制台),在新出的控制面板进行复制环境id,到cloudbaserc目录中,最后重启微信开发者工具,因为有时候配置文件已经配置了云函数的环境,这些配置必须重启在点击图标看到项目识别到云环境了



步骤 5:配置定时触发器
  1. 在云开发控制台,就是之前的云图标点击打开
  2. 点击 generateDailyArticle 函数名
  3. 切换到 "触发器" 标签
  4. 点击 "添加触发器"
  5. 配置 Cron 表达式: 0 0 2 * * * * (每天凌晨 2 点)
  6. 点击确定

如果这么顺利就好了,一个配置触发器折腾我半天,最后发现挺坑的,

  1. 代码配置的触发器,死活不生效,清缓存、部署、重启项目来回试都没反应

  2. 打开云函数控制面板只能看,不能编辑触发器,找资料说控制面板的版本太低?

  3. 真的绝望,柳暗花明又一村,我的trae给出了一个办法真的挺不错,通过脚本安装打开云函数的线上版本的终端控制台,通过扫描进去直接找到云函数编辑触发器保存
    配置触发器方法:

  4. 进入你的项目目录:cd d:\greg-mini-project

  5. 安装 CloudBase CLI:npm install -g @cloudbase/cli

  6. 执行tcb login,浏览器打开腾讯云函数平台,微信扫描登录,找到云函数控制台,,,就很好操作了...

  7. 最后就是接口的等待时间,免费版本只有3秒,超时不候真的绝,好在后面可以开一个标准版一个月会员,首月3块,次月有点恐怖,反正用于学习够用了,

  8. 然后设置1分钟的请求频率,在微信开发者工具的云函数控制面板,终于看到自动执行任务的日志了,爽

步骤 6【一段闭环】:排查日志报错
  1. 在模拟器中点击【我的】→ 选择《资治通鉴》或《平凡之路》

  2. 首次访问会调用云函数生成文章

  3. 刷新页面会使用缓存(秒开)

  4. 点击"重新生成"可以手动刷新


三、总结

微信云函数初次使用,就是这个触发器的配置,花费时间多了,部分其他知识耽搁未记录,总的还是记录比较全

A. 触发器配置
问题

  1. 配置文件方式,配置触发器不生效
    本地config.json配置了触发器,反复部署后,微信开发者工具旧版控制台的「定时触发器」始终显示为空

原因

  1. 微信开发者工具内置的旧版 v1.6.46 云开发控制台存在界面 bug,即使触发器配置成功,界面也可能不显示;
  2. 部分版本的开发者工具,「云端安装依赖」的部署模式不会同步config.json的触发器配置到云端;
  3. 未找到新版控制台的可视化配置入口

解决

  1. 放弃本地config.json配置,直接进入腾讯云 CloudBase 新版控制台,在云函数详情页的「触发器」选项卡,可视化创建定时触发器,100% 生效;
  2. 通过实时日志验证触发器运行状态,不纠结旧版控制台的界面显示

B. 云函数部署
问题

  1. 云函数部署报错、依赖安装失败
    全量上传部署时,弹出「云函数中有未安装的依赖 node-fetch,是否确认上传」的警告

原因

  1. package.json里声明了node-fetch依赖,但本地没有执行npm install安装,node_modules文件夹不存在,全量上传时工具检测到依赖缺失

解决

  1. 右键云函数文件夹打开终端,执行npm install安装本地依赖,再执行全量上传部署

C. 触发器运行正常,云函数报错
问题

  1. 触发器每分钟正常调用云函数,但返回报错「缺少必要参数:bookType 或 date」

原因

  1. 云函数代码仅适配了「前端手动调用」的场景(前端会传入bookType和date参数),但定时触发器自动调用时,只会传入系统内置参数,不会自动传入业务必填参数,触发了代码里的参数校验规则

解决:修改云函数主入口代码,增加「定时触发器调用」的兼容逻辑

  1. 判断调用来源,若为定时触发器触发,自动填充默认的bookType;
  2. 自动生成当前日期(YYYY-MM-DD 格式),补齐必填参数;
  3. 保留原有的前端调用参数校验逻辑,不影响原有功能

D. 免费版云函数默认超时时间只有3秒
问题

  1. 腾讯云控制台里,云函数的执行超时固定为 3 秒,加号按钮无法点击,无法修改为更长时间

原因

  1. CloudBase 免费体验版(个人版)默认锁定了超时时间修改权限,免费版默认最大超时为 3 秒,该能力需要开通付费资源扩展项才能解锁

解决:开通标准版一个月会员(首月3块),

三、小程序示例代码

见下一篇文章更新,这里太长了就不贴了,

四、云函数与云开发的区别【扩展学习】

其实区别蛮大具体见另一篇文章

相关推荐
eric*16882 小时前
微信小程序全局安全水印组件实践:支持动态更新、全局生效、自定义样式
微信小程序·小程序
杰建云1671 天前
微信小程序自制全流程实测与避坑指南
微信小程序·小程序
kyh10033811201 天前
微信小程序 聚合摇骰喝酒工具 完整实现(含源码)
微信小程序·小程序·摇骰子小游戏
Greg_Zhong1 天前
微信小程序中实现自定义圆形进度条
微信小程序·自定义圆形进度条
好赞科技1 天前
2026年五大精选微信小程序,革新效率体验提升智能生活品质
大数据·微信小程序
雯0609~1 天前
微信小程序的原生开发项目如何转至uni-app
微信小程序·小程序·uni-app
好赞科技2 天前
2026年最佳健身小程序推荐榜单,帮你解锁智能运动新体验
大数据·微信小程序
好赞科技2 天前
026年五大汽车保养预约小程序推荐榜单,让养车更轻松省心
大数据·微信小程序
azhou的代码园2 天前
基于微信小程序的图片识别科普系统的设计与实现
vue.js·spring boot·微信小程序·小程序·毕业设计·科普·图片识别