不知道大家有没有遇到这种需求:前端上传文件到后端文件存储服务器,但是想要通过百度云盘将文件下载下来,如果通过我们的文件存储服务器下载,由于带宽比较贵,根本支持不了高速下载需求
如果说能直接将文件上传到百度网盘,然后给客户分享出来,是不是就解决了这个问题?
一、百度网盘开放平台
如果说百度云盘能有类似于OSS的接口,那就好办了,所以去网上看了看,百度网盘有个开发者平台:百度网盘开放平台
这玩意还挺唬人的,刚看到确实挺兴奋,觉得有救了,但是仔细看看对接文档,就发现这玩意似乎不大好用,看看它的接入授权
这玩意的授权方式是网页授权,必须得登录你的账号,然后走Oauth授权,才能实现登录,而且办法的token只有30天有效期。关于Oauth授权,百度开放凭条其实提供了三种方式:授权码模式、简化模式或者设备码模式,但是每一种都是关于当前登录用户的授权,没有给后端直接授权获取token的方法。。说白了,百度网盘开放平台现在只提供了一个使用场景:企业接入百度云盘提供多用户存储文件到每个用户云盘的能力,说白了,借助这个平台,可以打造自己的"百度云盘",比如,ES文件浏览器可以借助开放平台的SDK集成百度网盘,实现百度网盘和手机文件系统文件互传。
这东西作为插件应用还是挺不错的,想作为单纯的文件存储系统来使用,还差了很多意思。
那该怎么办?
二、借助黑群晖实现网盘同步
经常玩群辉的都知道,群辉有个软件叫做Cloud Sync
,它能将群辉系统的指定文件夹同步到其它云网盘
支持的类型是相当多,几乎所有的网盘类型它都支持了。点击百度云,接下来一步一步的按照提示操作,最后完成添加百度云盘。最后新增同步任务即可
这样,就完成了黑群晖和百度云盘的文件同步功能。
问题是,我的文件在我的linux机器上,和黑群晖有啥关系?
现在比较巧的是,黑群晖和我的linux机器都在我家里的书房,它们在同一个局域网里,如果我能把文件先从linux传到黑群晖,那黑群晖就会自动把文件同步到百度网盘了。
三、使用rsync同步黑群晖和linux
黑群晖上开启rsync非常简单,控制面板->文件服务->rsync ,开启rsync服务
剩下的就是我的linux和黑群晖之间的文件同步了,详情可看文章:文件夹同步:rsync 命令详解
配合定时任务备份:linux文件夹定时备份 ,就完美解决了文件同步问题。
END。
注意:本文归作者所有,未经作者允许,不得转载