// 引入ali-oss
let OSS = require('ali-oss');

/**
 *  [accessKeyId] {String}：通过阿里云控制台创建的AccessKey。
 *  [accessKeySecret] {String}：通过阿里云控制台创建的AccessSecret。
 *  [bucket] {String}：通过控制台或PutBucket创建的bucket。
 *  [region] {String}：bucket所在的区域， 默认oss-cn-hangzhou。
 */
let client = new OSS({
  
    bucket: 'jieancai',
    accesskeyId: 'LTAI4FyVepQBtS7P6waqWbjC',
    accesskeySecret: 'Fu97bC8ygDnsef8dhXlU4ZEaB2gNDM',
    region: 'oss-cn-beijing.aliyuncs.com'
});

/**
 *  上传文件，大小不能超过5GB
 * @param {string} ObjName OSS的储存路径和文件名字
 * @param {string} fileUrl 本地文件
 *
 * @retruns Promise
 */
export const put = async (ObjName, fileUrl) => {
    try {
        let result = await client.put(`/img/${ObjName}`, fileUrl);
        // AAA为文件夹， ObjName为文件名字,可以只写名字，就直接储存在 bucket 的根路径
        return result;
    } catch (e) {
        console.log(e);
    }
};

export const getFileNameUUID = () => {
    function rx() {
        return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
    }
    return `${+new Date()}_${rx()}${rx()}`;
};

export function client1(data) {
    //data后端提供数据
    return new OSS({
        region: data.region,
        accessKeyId: data.accessKeyId,
        accessKeySecret: data.accessKeySecret,
        bucket: data.bucket
    });
}
