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

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

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

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

开始代码部分:

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

超时了:

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

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

客户度调用也是超时:

网上也没有太好的资料。

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

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

捕获到的异常为:

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

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

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

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

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

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

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

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

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

相关推荐
进击的野人2 分钟前
Vue 组件与原型链:VueComponent 与 Vue 的关系解析
前端·vue.js·面试
馬致远10 分钟前
Vue todoList案例 优化之本地存储
前端·javascript·vue.js
请叫我聪明鸭11 分钟前
CSS实现单行、多行文本超长显示 / 不超长隐藏、悬浮窗超长展示/不超长隐藏、悬浮窗手动控制样式
前端·javascript·css
blackorbird12 分钟前
苹果修复了两个在定向攻击中被利用的Webkit漏洞,其中一个与谷歌ANGLE漏洞同源
前端·webkit
席之郎小果冻12 分钟前
【04】【创建型】【聊一聊,建造者模式】
java·前端·建造者模式
风无雨14 分钟前
在 React 中实现数学公式显示:使用 KaTeX 和 react-katex
前端·react.js·前端框架
二两锅巴1 小时前
📺 无需Electron!前端实现多显示器浏览器窗口精准控制与通信
前端
炸土豆1 小时前
防抖节流里的this传递
前端·javascript
用户4099322502121 小时前
Vue3中动态样式数组的后项覆盖规则如何与计算属性结合实现复杂状态样式管理?
前端·ai编程·trae
山璞1 小时前
Flutter3.32 中使用 webview4.13 与 vue3 项目的 h5 页面通信,以及如何调试
前端·flutter