@nuance-fe/obs-cdn-uploader
v0.1.1
Published
Upload local files to Huawei OBS and return CDN URL metadata.
Readme
@nuance-fe/obs-cdn-uploader
Upload local files to Huawei OBS and return CDN URL metadata.
Install
npm install @nuance-fe/obs-cdn-uploaderUsage
import { createObsCdnUploader } from '@nuance-fe/obs-cdn-uploader';
const uploader = createObsCdnUploader({
obsClientOptions: {
access_key_id: process.env.OBS_AK!,
secret_access_key: process.env.OBS_SK!,
// server defaults to https://obs.cn-north-4.myhuaweicloud.com
},
projectName: 'nova',
// optional logger: console
});
const result = await uploader.uploadFile('/absolute/path/to/icon.svg');
console.log(result);
// { url: 'https://img.cuteslator.com/static/nova/..../....svg', size: 1234, md5: '...' }API
createObsCdnUploader(options)
Options:
obsClientOptions(required): OBS SDK options.projectName(required): used in key pathstatic/{projectName}/....bucket(optional, defaulthundun)cdnUrlPrefix(optional, defaulthttps://img.cuteslator.com/)cacheDir(optional, defaultnode_modules/.cache/obs-cdn-uploaderresolved fromprocess.cwd())cacheId(optional, defaultobs-md5-url-map)logger(optional, default silent logger)
Behavior defaults:
keyPrefixis fixed asstatic.obsClientOptions.serverdefaults tohttps://obs.cn-north-4.myhuaweicloud.comwhen not provided.
uploadFile(filePath, uploadOptions?)
uploadOptions.projectName(optional): temporarily overrides the uploader-levelprojectName.
Returns:
{
url: string;
size: number;
md5: string;
}Logging
Logger is disabled by default. Pass logger: console to enable logs.
npm publish contents
This package publishes only:
dist/README.md
Configured via the files field in package.json.
