Skip to content
This repository has been archived by the owner on Jul 8, 2023. It is now read-only.

挂载 Teambition 文件 Serverless(云函数)解决方案

License

Notifications You must be signed in to change notification settings

Cyang39/TeambitionShareJson

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

项目说明

挂载 Teambition 文件( Json API Server/Serverless )

本项目可以直接部署到:

  • 腾讯云函数(Serverless Cloud Function,SCF):入口 index.main_handler
  • 阿里云函数:入口 index.handler

API 说明

/

显示项目列表,API演示应用演示

/Collection_ID

显示文件夹内列表,API演示应用演示

/file/Work_ID

重定向到文件,API演示(直接点击此链接将下载一个文件)

参考项目

目录密码

  • 项目列表密码在 config.js 中设置;
  • 目录密码可在对应目录下创建一个 .password 文件,文件名为目录密码,例如123456.password;
  • 访问带有密码的目录,需要 URL 参数 passwrod,例如/?password=123456

部署说明

  1. 下载 / 克隆本项目
  2. config.js中设置cookie和根地址密码(详见代码文件注释)
    • cookie浏览器文档请求的头部中拷贝
  3. filter.js中设置 API 想要暴露的字段(详见代码文件注释)
  4. 在云函数控制面板选择 Node.js 运行时,上传项目目录
    • 腾讯云会根据 package.json 安装依赖,也可以安装后打包上传
    • 阿里云貌似不会安装依赖,建议本地安装后打包上传
  5. 设置 API 网关(可开 CORS,可设置仅 GET 方法)触发器(HTTP触发器)
    • 若模板自动设置触发器,可跳过此步骤,在以后可进一步设置触发器
    • 推荐选用 Node.js 应用模板,然后覆盖代码
  6. 通过设置的网关即可访问 API

其他说明

  • 目前不支持 Teambition 网盘,只支持项目文件;
  • 目前未作分页,单文件夹内内容请不要超过100项;
  • cookie 过期,可直接在线编辑更新并重新部署;
  • 个人日常使用的话,腾讯云和阿里云的免费额度完全够用;
  • 可以选择最低的 64MB 内存的配置(阿里云最低 128MB),实际每次调用仅 20MB;
  • API 绑定私有域名需备案,但 github/coding pages 不需要,可通过此方法构建私有域名网盘,例pan.hqy.life;
  • 如不绑定私有域名,阿里云函数会在响应头目强制添加Content-Disposition: attachment,即使返回json也会被下载,但对 API 使用无影响(腾讯云无此规则)。

About

挂载 Teambition 文件 Serverless(云函数)解决方案

Topics

Resources

License

Stars

Watchers

Forks