TCShare - 天翼云API目录列表程序折腾小记

Author Avatar
Lvv 2月12日
  • 在其它设备中阅读本文章

2020/5/23

万人骑的 API: safebox 凉了,用该 API 会无法授权,请自行寻找更换新的 API。


好久不见,又到了懒癌晚期博主随缘更新环节。为什么会诈尸更新,这要从一只蝙蝠说起...

最近上网冲浪的时候,在 Loc 发现了 TCShare 这个天翼云列目录程序,恰好最近疫情影响人闲得慌,又恰好手里 10T 的天翼云盘也闲得慌,于是 拖延到 抽空在今天 就折腾了一下。


程序开源地址:https://github.com/xytoki/TCShare

Hostloc 原帖:https://hostloc.com/thread-640211-1-1.html

~ 成品 DEMO:https://rua.cx 演示站 API 凉了


本文折腾环境基于: 宝塔面板 /Nginx1.17.8/PHP7.3

食用方式:

2020/4/25 懒癌晚期的我终于回来更新一下 V3 版本的安装流程了...

1. 新建站点,找到配置文件把以下代码注释掉,解决列网盘图片 404 的问题:

    #location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    #{
    #    expires      30d;
    #    error_log off;
    #    access_log off;
    #}

图示:

2. 找到伪静态,设置 Rewrite 规则:

try_files $uri $uri/ /index.php$is_args$args;
location ~ /\.env {
   deny all;
}

图示:

3. 到 PHP 设置找到禁用函数,移除 putenv,便于后续用 composer 安装依赖。

4. 从 GitHub 拉程序下来扔在网站目录, 获取 API,在网站根目录新建一个名为 .env 的文件,复制以下模板键入:

#   XS 是前缀
#   | -KEY 是配置种类,可选KEY,APP,SEC
#   | | - -ct是key的ID(类似config.php)
#   | | - | - something是配置名称
#   | | - | - | - - - - value在等号右边
#   XS_KEY_ct_something=value

    XS_KEY_ct=ctyun   #必填,值为ctyun
    XS_KEY_ct_FD=     #应用文件夹名
    XS_KEY_ct_AK=     #AK
    XS_KEY_ct_SK=     #SK

#   这里APP后面的可以是任意值,一般就123456下去
#          ↓
    XS_APP_1=/              #挂载路径
    XS_APP_1_NAME=RuaDisk   #网盘名称
    XS_APP_1_THEME=mdui     #界面主题
    XS_APP_1_BASE=/         #网盘内路径
    XS_APP_1_KEY=ct         #对应上面Key的ID

如图,根据 API 填写应用文件夹名,AK,SK 对应值。

5. 转战 Shell 终端,进入网站根目录,composer install 安装依赖。

#命令以rua.cx为例,请自行替换自己的网站根目录。
cd /www/wwwroot/rua.cx
composer install

图示:

如安装失败(见配图),请确认网站 PHP 所用的版本以移除 putenv 函数的禁用。并在 shell 终端下执行以下命令将宝塔 php 版本设置为系统 php-cli 版本

ln -sf /www/server/php/73/bin/php /usr/bin/php

根据自己宝塔安装的 PHP 版本更改,不要照抄,我的版本是 PHP7.3 所以这里是 /php/73,你如果是 PHP7.2 的话就是 /php/72,以此类推举一反三。更改后再次执行 composer install 即可。

6. 依赖安装完成后,直接访问站点域名,不出意外的话就可以看到安装界面了,直接点击 Click here to authorize 进入授权界面。

7. 输入天翼云盘的账号密码后会自动跳转到网站首页,安装算是完了。

8. 最后来到我们的天翼云盘,在 我的应用 中新建一个 safebox 的文件夹。

PS:safebox 文件夹为 API 指定,无法更改名字。需要列目录的文件也是往里面扔,网页端才会显示。

9. 每个月记得要手动访问定时访问 /-renew ,更新授权,以延长 token 的有效期。

然后就完事了,站点标题、主题等也是在网站根目录 .env 文件修改,作者都有注释。


因为基于天翼云盘,国内下载速度直接跑满宽带,比 Onedrive 香多了。

最大的坑就是天翼云普通会员每日上传文件总大小限制2G, 开会员可解...

本文链接:https://sumrday.net/exp/tcshare-log.html
本文根据 Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License 进行授权。

    小七
    小七  2020-02-17, 19:16

    泛滥就好玩了

    沉默
    沉默  2020-03-01, 20:35

    为什么我执行composer install下载都是failed

      Lvv
      Lvv  2020-03-13, 15:55

      环境配置好了没

    天翼云盘
    天翼云盘  2020-04-12, 14:13

    找了两小时终于在这个地方(**)找到 AK,SK,FD 对应值,完美搭建。

      Lvv
      Lvv  2020-04-12, 15:23

      该评论疑似引流,括号内地址已屏蔽。仔细找我文章也给出了AK,SK,FD值。还无需付费。

        略懂°
        略懂°  2020-04-30, 12:06

        对头 引流的,还要付费。唉

    tefuir
    tefuir  2020-04-30, 17:03

    为什么我Click here to authorize之后
    {"errormsg":"InvalidSignature","success":false}
    显示这个啊 环境配置好了。.env文件也改好了 。。。

      Lvv
      Lvv  2020-04-30, 17:05

      这个我倒是没遇到过,你确定.env的AK/SK/FD是对的吗

    nameless1027
    nameless1027  2020-05-09, 13:59

    亚马逊云的vps怎么安装composer,大佬就教

      nameless1027
      nameless1027  2020-05-09, 14:56

      按教程装好了,开始就是打不开网站怎么办?

    小盆友
    小盆友  2020-05-10, 10:14

    按照步骤安装,依赖composer install了(但不确定是否完整= =),也确定.env没错,伪静态也没错,但是就是怎么弄都是“Fatal error: Uncaught SymfonyComponentDotenvExceptionFormatException: Invalid character in variable name in "C:phpstudy_proWWW*.*.com/.env" at line 1. ...# XS 是前缀n... ^ line 1 offset 0 in ”这个498错误,大佬救命啊=。=

      Lvv
      Lvv  2020-05-10, 10:29

      打开网页,能跳转到授权界面吗

        小盆友
        小盆友  2020-05-10, 12:36

        跳转不到,直接就是这个错误页面。.env文件有没空格我都检查过了。是不是依赖安装不完整导致?

        小盆友
        小盆友  2020-05-10, 13:02

        好像是依赖无法下载了。对比你的图。我的都是没有(100%),而都是Loading from cache

          Lvv
          Lvv  2020-05-10, 13:06

          那可能是composer的问题,你的环境是Windows?

      小盆友
      小盆友  2020-05-10, 14:12

      安装composer 也是折腾,哈哈。我尝试直接安装,也不行。错误:
      The php.ini used by your command-line PHP is: C:BtSoftphp73php.ini

      A setting in your php.ini could be causing the problem: Either the 'extension_dir' value is incorrect or the dll does not exist.

      Program Output:
      PHP Warning: PHP Startup: Unable to load dynamic library '' (tried: ext (找不到指定的模块。), extphp_.dll (找不到指定的模块。)) in Unknown on line 0
      PHP Warning: PHP Startup: Unable to load dynamic library '' (tried: ext (找不到指定的模块。), extphp_.dll (找不到指定的模块。)) in Unknown on line 0
      PHP Warning: PHP Startup: Unable to load dynamic library '' (tried: ext (找不到指定的模块。), extphp_.dll (找不到指定的模块。)) in Unknown on line 0

      小盆友
      小盆友  2020-05-10, 14:58

      composer折腾安装成功了。但是貌似是应该依赖安装是锁了吧。提示:
      installing dependencies from lock file <including require-dev>
      verifying lock file contents can be installed on current plartform.
      Nothing to install, update or remove
      Generating optimized autoload files
      8 packages you are using are looking for funding.
      Use the "composer fund" command to find out more!

    k
    2020-05-13, 09:17

    有联系方式吗?,我那个composer install安装依赖,装不了。不是php问题,想发图问一下

    yao
    yao  2020-05-23, 08:08

    现在授权页面提示这个{"errormsg":"PermissionDenied","success":false},是否是api失效了

      Lvv
      Lvv  2020-05-23, 17:05

      API凉了,自行更换新的,或者更换程序

    路人
    路人  2020-06-03, 23:01

    和彩云能用,不过有个问题,列表目录超过200个文件就不会再更新了。不知道有没大侠能修改修改,还是能撸一下的