javascript 上传文件到阿里云的oss,上传文件成功后怎么获取文件的真实路径?

JavaScript06

javascript 上传文件到阿里云的oss,上传文件成功后怎么获取文件的真实路径?,第1张

如果你直接使用 javascript 将阿里云的accessId、accessKey写在页面上是不安全的,你可以使用后台存储这些敏感的信息,官网有相关的SDK ,你可以选择你常用的。

我使用的Java

流程:首先先访问你的后台获取到相关的凭证,将凭证携带发送到你的OSS,如果你要调用回调函数,在你的后台需要开启回调函数功能,

在后台编写你的回调函数,将回调函数凭证信息返回给前端,前端使用回调函数凭证访问OSS,就可以获取到回调函数信息。

主体函数:

  this.client = new OSS({

            region: "oss-cn-shenzhen",

            accessKeyId: token.credentials.accessKeyId,

            accessKeySecret: token.credentials.accessKeySecret,

            stsToken: token.credentials.securityToken,

            bucket: "filename",

            secure: true

          })

token:为连接前请求一次后端数据生成链接所需要的值配合前端进行oss链接

任何oss操作都要执行的oss链接,链接主要为了相应oss当前状态可连接操作文件

所以说此处建议封装成一个可调用函数,以便于后续操作

this.client.multipartUpload    //上传文件:传入必填项和后端需要的mate值便于后续操作:

Path-name:必填项//路径名称

File:必填项需要上传的文件

{

//此处传或者获取所需操作,不必填项:如

progress: async function(p) {//上传进度,p为上传进度0-1

            },

meta:{}//自定义所需的值

}

常用函数还有

 删除文件: let result = await this.client.delete(path)

path:删除文件路径,常用于替换或直接删除文件;

let result = await client.deleteMulti(['exampleobject-1', 'exampleobject-2', 'testfolder/sampleobject.txt'], {quiet: true})

//批量删除文件

此处也需要链接oss主体函数再进行相应的操作 

上传调试: localStorage.debug = 'ali-oss';

更多操作请查询:https://help.aliyun.com/document_detail;

前端小白继续加油

先阿里云oss后台管理配置,这里只是前端的操作,先获取后端接口返回的数据:

AccessKeyId, AccessKeySecret,SecurityToken,bucket,regionId,object_path,domain

bucket: OSS存储空间名称

domain: 域名地址

object_path: 保存至oss的文件路径

微信小程序配置域名白名单

[官方文档地址]( https://help.aliyun.com/document_detail/92883.html )