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

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

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

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

开始代码部分:

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

超时了:

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

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

客户度调用也是超时:

网上也没有太好的资料。

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

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

捕获到的异常为:

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

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

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

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

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

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

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

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

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

相关推荐
岛风风16 小时前
关于手机的设备信息
前端
ReturnTrue86816 小时前
nginx性能优化之Gzip
前端
w_y_fan16 小时前
Flutter 滚动组件总结
前端·flutter
wuli金居哇16 小时前
我用 Turborepo 搭了个 Monorepo 脚手架,开发体验直接起飞!
前端
Asort17 小时前
JavaScript 从零开始(五):运算符和表达式——从零开始掌握算术、比较与逻辑运算
前端·javascript
一枚前端小能手17 小时前
🚀 缓存用错了网站更慢?前端缓存策略的5个致命误区
前端·javascript
艾小码17 小时前
为什么你的页面会闪烁?useLayoutEffect和useEffect的区别藏在这里!
前端·javascript·react.js
艾小码17 小时前
告别Vue混入的坑!Composition API让我效率翻倍的3个秘密
前端·javascript·vue.js
南雨北斗17 小时前
VS Code 中手动和直接运行TS代码
前端
小高00717 小时前
🔍说说对React的理解?有哪些特性?
前端·javascript·react.js