阿里云使用js 实现OSS图片上传、获取OSS图片列表、获取图片外网访问地址(读写权限私有、读写权限公共);

1.引入js文件

<script src="http://gosspublic.alicdn.com/aliyun-oss-sdk-4.4.4.min.js"></script>

2.填写配置信息

1

2

3

4

5

6

7

var client = new OSS.Wrapper({

     region: 'oss-cn-beijing',//你的oss地址 ,具体位置见下图

     accessKeyId: 'xxxxxxxxxxxxxxx',//你的ak

     accessKeySecret: 'xxxxxxxxxxxxx',//你的secret

     //stsToken: '<Your securityToken(STS)>',//这里我暂时没用,注销掉

     bucket: 'your oss name'//你的oss名字

 });

  

region  你的oss地址

前提是你需要先创建一个Bucket

如上图   在你的oss控制台

oss-cn-后面的便是你的oss地址

 

 accessKey和accessKeySecret

在访问控制 --> 用户管理  --> 点击你的用户

如果 忘记 accessKeySecret 需要点击创建AccessKey  重新获取。

 

 

bucket名字 就是你创建oss时候的名字

可以在下图看到

点击 对象存储 --> 就可以看到你的oss名字了。

 

 

配置信息填写完成后就可以实现上传下载功能了。(这里我用的ak是管理员的ak拥有所有的权限,增删改差)

 

3.获取oss文件列表

完整写法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title></title>

    </head>

     

    <body>

        <input type="file" name="" id="file" value="" />

        <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>

        <script src="http://gosspublic.alicdn.com/aliyun-oss-sdk-4.4.4.min.js"></script>

        <script type="text/javascript">

         

         var client = new OSS.Wrapper({

            region: '这里填写你的oss地址',

            accessKeyId: '这里填写你的ak',

            accessKeySecret: '这里填写你的aks',

            bucket: '这里填写你的oss名称'

          });

         

        //获取oss文件列表

          client.list({

                  'max-keys': 10

                  }).then(function (result) {

                  console.log(result);

                  }).catch(function (err) {

                  console.log(err);

              });

           

        </script>

    </body>

</html>

  将上方代码完整复制,然后更改

1

region、accessKeyId、accessKeySecret、bucket这四个值,就可以看到在控制台打印输出文件列表。<br><br><br><br><span style="font-size: 18pt">4.上传文件 到oss</span><br><br>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title></title>

    </head>

     

    <body>

        <input type="file" name="" id="file" value="" />

        <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>

        <script src="http://gosspublic.alicdn.com/aliyun-oss-sdk-4.4.4.min.js"></script>

        <script type="text/javascript">

         

         var client = new OSS.Wrapper({

1

2

3

4

        region: '这里填写你的oss地址',

accessKeyId: '这里填写你的ak',

accessKeySecret: '这里填写你的aks',

bucket: '这里填写你的oss名称'<br><br>          });

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<em id="__mceDel">

          $("#file").change(function(){

            console.log("change");

            client.multipartUpload("testImg", this.files[0]).then(function (result) {

                console.log(result);

 

注:有时候会出现result.url没有值的情况。

但是result.res.requestUrls[0]会有值,只需要result.res.requestUrls[0].substr(0, result.res.requestUrls[0].indexOf("?"))截取一下就好了。

 

              }).catch(function (err) {

                console.log(err);

              });

          });

           

        </script>

    </body>

</html>

</em>

  

 将代码复制,然后更改

1

region、accessKeyId、accessKeySecret、bucket这四个值,<br>运行此代码,然后选择文件,便可以实现上传功能。<br><br>

5. 获取图片外网访问地址

获取client后 

如果图片读写权限为私有

client.signatureUrl("你的图片地址/名字")

例如我的图片(名字为testImg)在根目录

client.signatureUrl("testImg");//返回的就是带加密签名的图片路径,复制这个路径到浏览器上,便可以实现浏览

 

如果图片的读写权限为公共

client.getObjectUrl("你的图片名字");//返回的就是不带签名的图片路径,复制路径也可以在浏览器上访问.

 

ps:如何看自己的文件读写权限?

点击要看的文件,然后最下方选择设置读写权限。

参考:http://www.cnblogs.com/MainActivity/p/8492211.html

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值