upload-cdn
将本地文件或远程 URL 上传到研发平台 CDN,返回 CDN 访问地址。
CLI 用法
bash
npx t-comm upload-cdn <source> [options]参数
| 参数 | 说明 |
|---|---|
source | 本地文件路径;或使用 --url 模式时传入远程 URL |
选项
| 选项 | 说明 | 默认值 |
|---|---|---|
-r, --rid <rid> | 研发平台用户标识(默认读环境变量 PMD_RID) | - |
-t, --rtoken <rtoken> | 研发平台用户 token(默认读环境变量 PMD_RTOKEN) | - |
-u, --x-username <username> | 用户名(可选,默认读环境变量 T_COMM_X_USERNAME) | - |
--url | 将 source 作为远程 URL 下载后再上传 | - |
-d, --dir <dir> | COS 目标子目录(如 my-project/designs) | - |
--api-url <url> | 上传 API 地址 | 内网默认地址 |
--site-name <name> | CDN 文件名前缀标识 | cli-upload |
-j, --json | JSON 格式输出(等同设置环境变量 T_COMM_JSON_OUTPUT=1) | - |
示例
bash
# 上传本地图片
npx t-comm upload-cdn ./design.png --rid xxx --rtoken yyy
# 上传到指定子目录
npx t-comm upload-cdn ./banner.jpg --rid xxx --rtoken yyy --dir my-project/designs
# 上传远程 URL(自动下载 → 上传 → 清理临时文件)
npx t-comm upload-cdn "https://example.com/logo.png" --url --rid xxx --rtoken yyy
# JSON 输出(便于脚本解析)
npx t-comm upload-cdn ./design.png --rid xxx --rtoken yyy --json环境变量
| 变量名 | 说明 |
|---|---|
PMD_RID | 研发平台用户标识(未传 --rid 时读取) |
PMD_RTOKEN | 研发平台用户 token(未传 --rtoken 时读取) |
T_COMM_X_USERNAME | 用户名(未传 --x-username 时读取,可选) |
T_COMM_JSON_OUTPUT | 设置为 1 时以 JSON 格式输出结果 |
认证优先级:CLI 参数 --rid/--rtoken > 环境变量 PMD_RID/PMD_RTOKEN。二者都未提供时命令会报错退出。
注意事项
- 图片文件(jpg/jpeg/png/gif/bmp/webp)会自动走 TinyPNG 压缩;SVG 及其他非图片文件按原始文件上传并显式指定 MIME 类型
- CDN 文件名会由
own_<site-name>_<随机串>.<ext>重新生成,避免重名覆盖 --url模式会先下载到系统临时目录,上传完成后自动清理临时文件- 上传结果中的
cdnUrl即为最终 CDN 访问地址