# ali-oss-upload **Repository Path**: zhangbosss/ali-oss-upload ## Basic Information - **Project Name**: ali-oss-upload - **Description**: 阿里云oss上传命令行工具 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-06-26 - **Last Updated**: 2023-11-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OSS 上传服务 支持静态资源直接批量发布,同时支持单文件上传功能 (超过5M分段上传),资源上传涉及权限等隐私,一般用于解决一键化部署问题,一般库放在私服 # 说明 - 使用 shell 脚本执行上传命令时, 需在sh中进行异常捕获处理, 否则会导致***脚本错误不阻断构建进程***造成资源上传失败的问题 - 上传过程,不会修改原资源的文件名 ## 安装 npm install -g @aliyun-upload/upload-oss --registry=https://registry.npmjs.org/ ## 依赖 > node版本 > 10.0.0 ### 命令行 文件夹上传——批量上传 ```shell upload-oss upload --uploadFrom=dist --uploadTo=monkey-dist --config=./upload-oss.test.json /* uploadFrom: [*必传] 待上传的文件路径 uploadTo: 上传到oss的文件存放根路径 (通常为项目名称, 如: wukong-app、wukong-pay,禁止使用dist、output、test、target、src此类目录作为根路径, 避免命名冲突) config: 配置文件——默认不需要此参数,除非有指定自己的bucket 的需求 - bucket: bucket名称(默认xiaohou) - limit: 上传最大并发数(默认100) - chunkSize: 分片上传时最小分片限制(默认5, 即5M) - accessKeyId: bucket账号AppID - accessKeySecret: bucket账号AppKey */ ``` ### 命令行 单文件上传 ```javascript upload-oss uploadFile --file=./index.js --uploadTo=some-dist --config=./upload-oss.test.json /* file: [*必传] 待上传的文件路径&名称 uploadTo: 上传到oss的文件存放根路径 (通常为项目名称, 如: wukong-app、wukong-pay,禁止使用dist、output、test、target、src此类目录作为根路径, 避免命名冲突) config: 配置文件——默认不需要此参数,除非有指定自己的bucket 的需求 - bucket: bucket名称(默认xiaohou) - limit: 上传最大并发数(默认100) - chunkSize: 分片上传时最小分片限制(默认5, 即5M) - accessKeyId: bucket账号AppID - accessKeySecret: bucket账号AppKey */ ``` ### 开发中使用方式 ```javascript // 多文件上传,需指定uploadFrom var UploadOss = require('@aliyun-upload/upload-oss') new UploadOss({ uploadFrom: '', // 文件夹 uploadTo: '', bucket: '', limit: 100, accessKeyId: '', accessKeySecret: '', success() { console.log('================全部文件上传完毕================'); }, fail() { console.log('================文件上传失败================'); process.reallyExit(1); } }).upload(); // 单个文件上传,无需指定uploadFrom var UploadOss = require('@aliyun-upload/upload-oss') new UploadOss({ uploadTo: '', bucket: '', limit: 100, accessKeyId: '', accessKeySecret: '', success() { console.log('================全部文件上传完毕================'); }, fail() { console.log('================文件上传失败================'); process.reallyExit(1); } }).uploadFile("your_file_path"); ## 发布 - 1. 先登录 ```shell npm login --registry=https://registry.npmjs.org/ ``` - 2. 发布 ```shell sh ./publish.sh ```