腾讯无服务器云函数SCF搭建OneDrive,重命名移动加密上传

搬瓦工机场JMS

demo: https://service-pgxgvop2-1258064 … com/release/abcdef/
test(可能正在修改): https://service-pgxgvop2-1258064 … ud.com/test/abcdef/

https://github.com/qkqpttgf/OneDrive_SCF

20190903,支持世纪互联版(在第10行修改为1),感谢@洋葱葱 提供自己的帐号,请其它小白鼠尝试一下。
20190902,重新申请注册微软应用,更改安装时的URL,以同时支持商业版与个人版,更新到此版本需要删掉原来的token,重新安装获取token。
20190901,(管理登录后)同时上传多个文件。
20190829,UTC时间换算成+8区时间,小尺寸图片预览时不扩大了。
20190825,将上传大文件用的url存在onedrive临时文件,中断上传后可以获取进度继续上传,上传完后删除临时文件。
20190824,大文件分片段顺序上传,每小片上传完后显示进度。
20190823,临时百度学习了一天ajax跟xhr(ajax跟xhr哪个要jquery?),做了管理登录后的大文件上传(游客上传还是4M以下)。
20190819,解决imgup_path没做设置时根目录变成图床目录的问题。
20190818,管理界面DIV加遮罩。
20190817,日志开篇就打印,后面不打印了,去掉全局$event1,游客图床目录不去OD查文件。
20190816,设置游客上传目录,可以上传<4M的文件,不设置这个值时该目录内容会正常列文件出来,设置后只有上传界面。游客上传的文件会被重命名为MD5加后缀,管理登录后上传的文件不会被重命名。
20190814,新建文本文件及目录
20190812,登录后在预览TXT时可以编辑保存(4M大小限制)。
20190811,登录后小文件(<4M)上传(因为API网关传送给SCF的event字符串最长为6291456,上传时只能base64后上传,不然00会变20内容出错,亲自试过4.04M/4237481字节的文件上传没问题,再大API网关就拒绝工作)。
20190809,管理登录后重命名、移动、加密目录,删除。
20190803,将分页的跳页信息存到OneDrive目录中,加入admin登录,准备写重命名等操作(来个前端啊),目录有空格的加密。
20190719,预览改/preview为?preview,更符合习惯。改密码输入框居中。
20190718,加密密码可中文可空格;public_path可以设置中文路径了;文件数>200才读第2次获取nextlink;寻找密码文件时改用递归。
20190709,去掉scfname的设置,直接从context里读,再次简化安装过程。
20190704,分页功能简直是大坑套小坑,巨硬也没有提供‘第X页’这样的东西,只能一页一页翻,想要跳页估计要存下来,SCF也不方便存。本人ajax也不会,只能做成这样了,大家试下。
         可以把token按128切开放在环境变量t1,t2~~t7里(再也不怕把token复制粘贴到github了,想死);
20190629,半路出家的人弄了一天,目录加密功能应该可以用了,帮测试下。
————————–
本帖是@风铃 大佬/thread-542867-1-1.html的分支,不过一些常用设置比较方便。
腾讯SCF的网址:https://cloud.tencent.com/product/scf

分支跟master对比:
在config中使用sitename,方便改网站名称;
在title中带上当前文件名;
支持自定义域名跟API触发同时工作,方便传播,不怕自定义域名被DDCC;
支持自定义域名跟API触发打开的目录不一样。

//在环境变量添加:
/*
sitename       :网站的名称,不添加会显示为‘请在环境变量添加sitename’
admin          :管理密码,不添加时不显示登录页面且无法登录
public_path    :使用API长链接访问时,显示网盘文件的路径,不设置时默认为根目录
private_path   :使用自定义域名访问时,显示网盘文件的路径,不设置时默认为根目录
imgup_path     :设置图床路径,不设置这个值时该目录内容会正常列文件出来,设置后只有上传界面
passfile       :自定义密码文件的名字,可以是’.password’,也可以是’aaaa.txt’等等;
                密码是这个文件的内容,可以空格、可以中文;列目录时不会显示,只有知道密码才能查看或下载此文件。
t1,t2,t3,t4,t5,t6,t7:把refresh_token按128字节切开来放在环境变量,方便更新版本
*/

搭建过程:(20190709,视频中的scfname现在不用了。)
https://service-pgxgvop2-1258064 … neDrive.mp4?preview
设置公开目录、网站名称等:
https://service-pgxgvop2-1258064 … 7%BD%AE.mp4?preview

操作要点:
1,安装前,在环境变量里什么都不用添加。
2,获取API时,复制完触发链接。
3,获得token后,可以复制粘贴到config的refresh_token字段,也可以按128字节分开,添加到环境变量的t1-t7。
4,可以正常使用后,再开始在环境变量做设置。
5,要使用自定义域名时,去把API网关的路径改成’/’,不用自定义域名可以不改。

贵州网友:20190825,将上传大文件用的url存在onedrive临时文件,中断上传后可以获取进度继续上传,上传完后删除临时文件。
20190824,大文件分片段顺序上传,每小片上传完后显示进度。
20190823,临时百度学习了一天ajax跟xhr(ajax跟xhr哪个要jquery?),做了管理登录后的大文件上传(游客上传还是4M以下)。
湖南网友:20190902,重新申请注册微软应用ID,更改安装时的URL,以同时支持商业版与个人版,更新到此版本需要删掉原来的token,重新安装获取token
山西网友:20190903,支持世纪互联版(在第10行修改为1),感谢 @洋葱葱 提供自己的帐号,请其它小白鼠尝试一下。
云南网友:能加个目录访问密码就完美了
西藏网友:收藏,
西藏网友: 这个是原来的函数服务吗,叫SCF我还不认识了,原来用来签到HOSTLOC的
云南网友:插眼
内蒙古网友:收藏一下
湖北网友:收藏
河南网友:收藏收藏
云南网友:我试着来操作一下吧
辽宁网友:非专业人氏弄了一天……
你试下目录密码功能~~~
黑龙江网友:非专业人氏弄了一天……
你试下目录密码功能~~~
安徽网友:哪个基础?加密功能是在风铃大佬的代码里面加代码的。

我做了:1,自定义密码文件名;
    2,从当前目录向上回溯到根目录判断某个最近的上级目录有没有加密;
    3,没有密码的话,就算知道文件目录结构也不能直接访问下级目录和文件,告诉过别人地址后,只要改密码就不怕了;
    4,自定义的密码文件,在目录列表时不会被列出来,甚至vi这个文件产生的.swx临时文件也不被显示。

所以你要重新下载,或直接把index.php复制过去也行,只要你onedrive的API token复制粘贴一下。
广西网友:不错fork回家慢慢捣鼓~
上海网友:插个眼  捣鼓一下
新疆网友:超过200文件能分页吗?
天津网友:风铃大佬的,先收藏了!
湖南网友:楼主,这个运行角色 怎么来的,新建吗? 选择哪个“支持角色的服务”
内蒙古网友:啊?那个不用选也不用新建吧?不是有个“默认XXX”吗?直接下一步就好啦~~
吉林网友:
成功了,多谢大佬,厉害啊厉害

请问下,那个内存 可以改大一点嘛,是不是内存改大一点,就相当于机器性能好一点
内蒙古网友:后台可以看一下监控信息:
(实时)运行内存MB    Max:1.371MB   Min:0.121MB  Avg:0.339MB
(近24小时)运行内存MB  Max:0.703MB  Min:0.121MB  Avg:0.296MB
小马哥给了128M的,都用不完的。
北京网友:后台可以看一下监控信息:
(实时)运行内存MB    Max:1.371MB   Min:0.121MB  Avg:0.339MB
(近24小时)运行内存MB  Max:0.703MB  Min:0.121MB  Avg:0.296MB
小马哥给了128M的,都用不完的。
吉林网友:我刚刚上传了一个视频,然后点击播放的时候提示我填上 密码,,,请问下默认密码多少,能取消密码吗
浙江网友:….密码是你设置的啊……
在SCF的环境变量里面添加的passfile就是你想要的密码文件名,程序会去找有没有这个文件,有就是加密的没有就直接浏览或下载。
不同的目录可以不一样的密码。
山东网友:可是我并没有去设置 这个 passfile变量, txt的可以直接看,mp4文件却要输入密码。。。
重庆网友:发长链接看看,或私发你的域名
澳门网友:我也是看别人代码来操作的~原来有个改oneindex分页的我找不到了,能帮我找一下吗?
福建网友:X的,分页是个坑,@风铃 大佬在children上再挖了个坑。
nextlink还是个坑,今天不搞了,吃饭。
明天出门去,先弃坑。
黑龙江网友:你好,我绑定域名出现这种情况,烦请看下:{"message":"There is no api match default env_mapping ‘\/’"}
贵州网友:看我第2个视频,我刚开始也出现这个,去api设置一下路径应该就好了。
新疆网友:可以了 谢谢啦
广东网友:可以了 谢谢啦
上海网友:支持一下。
湖南网友:感觉慢的1b啊,
浙江网友:因为每次都读了2遍微软接口才显示…不然没有nextlink不能翻页。
山东网友:老哥,小白问你测试页的readme说明怎么弄得
内蒙古网友:就放一个叫readme.md的文件在那,里面写几个字,就可以了。
台湾网友:{"errno":403,"error":"Invalid scf response. expected scf response valid JSON."}
海南网友:呃,你怎么操作的??
山东网友:我建了md的文件并且同步到onedrive根目录下 ,就出这行字,删除该文件就恢复正常了
青海网友:可能编码不太对?你把我的readme.md下载回去上传看看?
重庆网友:可能编码不太对?你把我的readme.md下载回去上传看看?
澳门网友:请问能改一下支持世纪互联版吗
广西网友:我不知道他的API在哪,我也没他的帐号,完全没办法操作(抚脸)
天津网友:偷偷pull request 给风铃主支,合并了。
西藏网友:20190809,管理登录后重命名、移动、加密目录
安徽网友:我只有世纪互联版的onedrive了,a1p被封了
河南网友:a1p封了弄a1~~
话说有谁有世纪互联版的帐号借我一下?
重庆网友:谢谢楼主,好教程
西藏网友:这也太秀了吧
云南网友:怎么上传文件呢?不使用客服端的情况下,OneDrive网页版登录被墙了。
吉林网友:怎么上传文件呢?不使用客服端的情况下,OneDrive网页版登录被墙了。
辽宁网友:我的可以借给你调试
陕西网友:
今天刚刚弄好上传文件,但只能上传小文件。
因为从API网关传送给SCF的event字符串最长为6291456,上传时只能base64后上传,不然00会变20内容出错,亲自试过4.04M/4237481字节的文件上传没问题,再大(4.3M)API网关就拒绝工作。
小图片是没问题了,要上传大件物品,只能oneindex或pyone或其它了。
安徽网友:正好用来上传图片用,感谢大佬啊。
澳门网友:大佬 求教如何启动登陆? 按照教程搭建好发现没有登陆选项…
新疆网友:

admin:             管理密码,不添加时不显示登录页面

没添加就不显示
安徽网友:无折腾不封神,楼主加油
海南网友:谢谢分享,很好用
山西网友:
谢了  试试速度


甘肃网友:这个文件夹可能不是你要的样子吧?
还有,你admin没有值,都不进登录页面……
山西网友:这个文件夹可能不是你要的样子吧?
还有,你admin没有值,都不进登录页面……
贵州网友:CDN的锅?我自己这边用域名没问题,正常登录。
河南网友:嗯 应该是CDN出的问题  我的文件里面有个视频 巨卡  一秒一卡顿… 想套nodecache的CDN发现源站只能是IP地址…

话说我的图片都没显示出来 你怎么看到我的站点的?
江西网友:密码文件放在根目录,绑定的域名无法访问
香港网友:
你的图片一开始显示了啊,但你上一条说图片没有了然后我发现没图片了
——
好像又有了
台湾网友:神奇了  我这里都不显示…

我套腾讯云的CDN看我的视频都卡…  感觉又能放弃了…
贵州网友:无法访问是什么意思,报什么错?去掉密码文件行吗?
江西网友:那个图片又没了,你在折腾CDN吧?慢慢调教,我没玩过。
甘肃网友:为毛上传了个readme.md 就报错{"errno":403,"error":"Invalid scf response. expected scf response valid JSON."}
河北网友:应该是编码问题,你看下39楼到41楼的办法。

或者现在你可以直接在网页登录后新建一个readme.md文件。
山东网友:应该是编码问题,你看下39楼到41楼的办法。

或者现在你可以直接在网页登录后新建一个readme.md文件。
吉林网友:大佬辛苦了,我的od一直挂着,还挺稳定的
新疆网友:设置游客上传目录,可以上传<4M的文件,不设置这个值时该目录内容会正常列文件出来,设置后只有上传界面。游客上传的文件会被重命名为MD5加后缀,管理登录后上传的文件不会被重命名。
黑龙江网友:收藏  
重庆网友:临时学习了一天ajax,弄到半夜。
现在可以上传大文件了!!
正式版本先不更新,现在只在test版本使用,只做了管理上传大文件。

https://service-pgxgvop2-1258064400.ap-hongkong.apigateway.myqcloud.com/test/abcdef/%E5%BD%93%E5%89%8Ddemo%E7%9A%84index.php?preview

从这里复制代码,请帮忙测试下大文件上传之后,下载下来会不会不能使用。
(无用的注释有点多,先无视)
重庆网友:多谢大佬,不过这两天没在家,手里没现成的电脑,可能过过几天再测试了。
浙江网友:20190825,将上传大文件用的url存在onedrive临时文件,中断上传后可以获取进度继续上传,上传完后删除临时文件。
20190824,大文件分片段顺序上传,每小片上传完后显示进度。
20190823,临时百度学习了一天ajax跟xhr(ajax跟xhr哪个要jquery?),做了管理登录后的大文件上传(游客上传还是4M以下)。
河南网友:技术大佬,支持一个,不过更新频率也太高了吧。
辽宁网友:谢谢,先MARK一下,下次好找。
甘肃网友:大佬,我按照视频的方法搭建,一步都没有错
为什么在获取refresh_token的时候 提示:
There is no api match uri ‘/authorize’ host
我之前还搭建成功了,不知道这次是为什么
删除重复搭建很多次都出现这样问题
福建网友:大佬,我按照视频的方法搭建,一步都没有错
为什么在获取refresh_token的时候 提示:
There is no api match uri ‘/authorize’ host
我之前还搭建成功了,不知道这次是为什么
删除重复搭建很多次都出现这样问题
山西网友:你再试下,另一个全新安装的是没问题了。(他弄了个小图床)
香港网友:大佬更新的真勤快…自从上次套CDN还是渣渣速度后再没整过…

我记得我当时token获取失败的时候新建隐私窗口重新登录获取到的。
陕西网友:
不然就是504错误,要不就是这个,新建隐私窗口也没用
{"errorCode":-1,"errorMessage":"User process exit when running"}
陕西网友:安装的时候提示这
{"errorCode":-1,"errorMessage":"User process exit when running"}

吉林网友:更新什么的,自愉自乐。
套CDN只是你跟腾讯之间用上了CDN,你看图片或下载东西的时候,你是直连微软的。
四川网友:可能昨天复制的时候全选没选到,没复制完,你再试下
河北网友:20190901,多文件同时上传(管理登录后)。
安徽网友:可以用世纪互联版吗?
上海网友:请问一下,你首面下面显示的readme.md内容怎么做的?
陕西网友:请问一下,你首面下面显示的readme.md内容怎么做的?
广西网友:66666.支持了
福建网友:我不会~
等我学会了HHHHHHHHHHHH
台湾网友:丢个readme.md文件在OneDrive里面就好了
广西网友:???API网关不是一直在,刚刚去新建一个,确认存活,不要误导大家。
早在20190709就不需要它了。
上海网友:能加个目录访问密码就完美了+1
安徽网友:谢谢,已经搞定
江苏网友:????你都没看完就回复???
上海网友:
字太多,我只看到了下面的评论  
不好意思
湖南网友:我选 的广东地区没有API,换香港地区就有API了。。

那个scfname确实不需要填 了

教程应该更新一下

已经搭建成功。
宁夏网友:我选 的广东地区没有API,换香港地区就有API了。。

那个scfname确实不需要填 了

教程应该更新一下

已经搭建成功。
台湾网友:什么时候支持PDF预览呀?比较喜欢这个功能
江西网友:20190902,重新申请注册微软应用ID,更改安装时的URL,以同时支持商业版与个人版,更新到此版本需要删掉原来的token,重新安装获取token
云南网友:20190903,支持世纪互联版(在第10行修改为1),感谢 @洋葱葱 提供自己的帐号,请其它小白鼠尝试一下。
宁夏网友:牛逼,终于上世纪互联版了
北京网友:不错哦

未经允许不得转载:美国VPS_搬瓦工CN2 GIA VPS » 腾讯无服务器云函数SCF搭建OneDrive,重命名移动加密上传

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏