微信开发小程序云开发云存储中文件下载地址实时读取文件内容实时下载地址解读

微信开发小程序云开发云存储中文件下载地址解读

最近公司要我开发一款具备电子签名功能的微信小程序,虽然我是Android开发程序员,但。。。老总要求了那我就去做呗,好在微信小程序还算入门容易,网上有很多案例可以参考,话不多说直接讲重点,我在开发的电子签名需要使用canvas,然后生成图片上传到云开发云存储中,并在展厅大屏幕上显示。在开发过程中我遇到了一个严重的问题,我获得的云存储文件的真实永久的下载地址如:https://*************.tcb.qcloud.la/text/testt.txt可以使用,我把图片下载地址放入了这个TXT文本里,但实时获取文件内容延迟很高不是最新的,如果签名的人较多可能出现文件内容覆盖这样是不行的,然后我开始寻找解决办法。我们是聪明的程序猿当然很快就能找到解决办法啦,好吧!我说实话,我花了两天晚上查找研究测试才发现问题所在。主要还是无意中看到大神的分享。

问题解决方案

1.正常下载地址:https://*************.tcb.qcloud.la/text/testt.txt?sign=af67b780a6325ddb8458637619b97428&t=1604374419 这个网址是实时改变的,实际开发中。
2.网络下载地址:https://*************.tcb.qcloud.la/text/testt.txt 这个网址是固定的可以直接访问,但是不能实时查询文件内容需要等待时间不一,需求实时性的小程序不建议使用。
3.实时下载地址:https://*************.tcb.qcloud.la/text/testt.txt?1604374419 这个是我要讲的重点

大家可能疑惑的是https://*************.tcb.qcloud.la/text/testt.txt后面的?1604374419是什么,我来解读一下它就是下载地址最后面的t=1604374419,这是什么意思呢?如下图所示
《微信开发小程序云开发云存储中文件下载地址实时读取文件内容实时下载地址解读》这串数字其实是将日期时间转码成的字符串。这串数字获取的代码:new Date().getTime().toString().slice(0, -3); 用这种方式可以得到t的值,然后做url拼接下载。这就得到了实时查看更新的文件内容了。若是其他软件想要获得实时下载地址,那就网上找一下日期时间怎么转成字符串再拼接时固定的网络下载地址就可以了,中间的问号?是不能少的而且要是英文?

总结

解读就到这里至于下载地址中间的sign是什么意思,我暂时没有去了解查询,大家有空了可以自己查询解读一下。若是有什么问题可以下方评论或私我,有时间我会解答。学会分享科技才会快速进步,大家互相学习哈,加油!

    原文作者:求知路上的龙少
    原文地址: https://blog.csdn.net/qq_40397259/article/details/109463833
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞