(作者 海丁香)
搭建私人云盘既有逼格,又能帮助续订onedrive,相信很多人需要。大体步骤参照下文进行即可,但因为教程较老,中途会出现各种问题,没开始的机友不要下载所提供的源码。oneindex项目作者已经将源码删除,仅剩不可依靠的一小部分,走了很多弯路才有了本文,希望大家不要步其后尘。
新源码下载地址见文末:使用新源码基本一路通畅,除了刷新一下,几乎没有任何问题。
这是参考教程,在网上有很多类似的文章,步骤非常详细,但有一些需要变动的地方:
OneDrive API +腾讯云 SCF免费搭建云盘 - 知乎
1、不管使用哪个源码,都会在创建API网关触发器时遇到这个问题:
没有权限进行此操作,请修改后重试。([TencentCloudSDKError]
Code=InternalError.GetRoleError, Message=[QC_STS] role not exist,
RequestId=a5712c26-4262-4fd0-a93c-356b5076329b)
解决办法是直接在服务菜单创建触发器,而不在函数中创建。作者说的添加角色的办法并不成立。
第一步,点击左边服务菜单;
第二步,选择地区中国香港;
第三步,点击蓝色按钮新建;
第四步,服务名、前端类型随便填,勾选公网,点击提交;
第五步,点击蓝色服务名-管理API-新建;
第六步,按照上面填写完毕,点击下一步,后端类型选择cloud function,名称选择/填写上面创建的云函数名称,勾选启用响应集成,其他默认;
第七步,点击下一步,返回类型选择html,点击完成。
第八步,点击前往发布服务,跳转后点击右上角蓝字“发布”,发布环境选择“发布”,备注随便填,提交即可。
The request in missing a required parameter"Region"
2、这个问题是使用老源码才会遇到的问题,解决办法是添加环境变量
Region ap-hongkong
解决以后还可能遇到各种问题,这个时候最好就换源码了。
3、下面这个问题是使用自定义域名时才会遇到的问题:
{"message":"There is no api match env_mapping list'\/'"}(这货大概就长这样)
在腾讯控制后台修改自定义域名的映射方式,设置路径为/即可。
4、使用旧源码各种瞎操作完成之后,最后竟是这样的结局,这个问题并没有解决,直接弃用了旧源码。
{“errorCode”:-1,“ errorMessage”:“捕获到用户代码异常”,“stackTrace”:“异常:无法在/var/user/index.php:215\nStack trace:\n#0中获取access_token。 /var/user/index.php(61):list_files('/')\ n#1/var/runtime/php7/bootstrap.php(46):main_handler(Array,Array)\ n#2 / var/ runtime /php7/bootstrap.php(204):__scf_bootstrap _ \\ EventHandler- \u003ehandle(Object(stdClass),Object(stdClass))\ n#3/var/runtime/php7/bootstrap.php(227):__scf_bootstrap _ \\ __main_for_scf ()\ n#4 {main}“}
最后提醒一下,安装最后跳转的网址是需要穿枪的,需要提早做好准备。另外,腾讯scf并不一定是免费的,这个程序的安全性不予保证,续订也很玄学,如果出现账号失效、个人信息被盗等等(目前并没有这个情况发生,可以选择认为是安全的),一概与本人无关。
限时福利:回复邮箱前缀(字母或者数字)送5TOnedrive账号,先到先得,数量有量,重要文件记得备份。
Onemanager/oneindex源码下载地址:关注公众号婆娑门后台回复odd免费领取