微信小程序开发:循环定时删除阿里云oss上传的文件

上文有说到我们开发了定时删除阿里云oss的功能,但是一次只能删除10条。

本文我们做到一次删除全部过期的文件。

实现:使用while循环,在循环里获取是否还有已过期的,没有就break掉,有就走删除逻辑。

开始代码部分:

逻辑还是比较简单的,一个while循环,每次查找20条已过期的数据,如果没有则结束while循环,存在则进入for循环删除,分别记录删除成功、失败的数量,但是有个问题,如果一直删除失败,那么就会一直陷入死循环了。

超时了:

我们把这个云函数的运行超时设置长一点:

现在的问题是,我设置了很长的超时时间,但是还是会很快就超时了:

客户度调用也是超时:

网上也没有太好的资料。

重新整理一下流程,我是在一个云对象里调用另一个云对象的方法。

我在删除的代码里加了一个try catch:

捕获到的异常为:

说delete_file方法没有在引用的云对象里,但是这个云对象我是已经上传部署了的。

重新部署一下aliyun-api这个云对象,因为这个云对象依赖了两个包,所以会部署时间长点。

可以了,可以了,问题解决!

问题的根源可能是因为云对象没有部署完整导致的。

下一期文章我将继续完善两个通道之间的切换问题,以及页面的控制可以通过配置更改,如:两个通道的启用、通道二的风格选项的启用、每个通道的分享标题和图片等等配置。

小程序名:《一方云知》。欢迎大家使用,人像动漫化接口是免费使用的。

这篇文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。

想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。

感谢你的阅读与支持,期待在未来的文章中与你再次相遇!

相关推荐
codeGoogle7 小时前
自研 IM 还是选择第三方 SDK?企业开发者应该如何权衡?
前端·后端·程序员
用户938515635078 小时前
React Context 与自定义 Hook 从底层到实践:「跨层级通信 + 副作用封装」全解析
前端·javascript·react.js
滴滴答答哒9 小时前
VUE3+element-plus MultiSelect 多选下拉组件
前端·javascript·vue.js
其美杰布-富贵-李9 小时前
04 watch 与 Vue 响应式数据流
前端·javascript·vue.js
赵大仁11 小时前
生成式 UI 实战:用 JSON Schema + React 动态渲染 AI 界面
前端·ai·react·next.js·前端架构·生成式ui
kyriewen12 小时前
我排查了一个React内存泄漏——罪魁祸首是这3个被忽略的清理函数
前端·javascript·面试
IT_陈寒12 小时前
我又被JavaScript的隐式类型转换坑了
前端·人工智能·后端
其美杰布-富贵-李12 小时前
03 ref、reactive 与 computed 响应式数据
前端·javascript·vue.js
OpenTiny社区12 小时前
GenUI SDK v1.3.0 发布|多框架兼容,一键换物料,渲染器 & 演练场全面增强!
前端·ai编程
用户9385156350712 小时前
useRef + Web Worker 实战:React 如何优雅地拥抱多线程
前端·javascript·react.js