OSS如何访问?如何使用?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

OSS如何访问?如何使用?

蘑蘑茶 2015-03-26 16:15:19 12914
OSS如何访问?如何使用?
1、上传文件 ,不管Bucket是私有还是公有读写的、语言是Java 还是php都是用相对应的SDK 进行上传 这个看SDK,对吧?
2、访问文件的时候,Bucket公有读写的时候,按文件路径的URL,顺其自然的访问的到,对吧?
3、访问文件的时候,Bucket私有读写的时候,怎么访问?在Header中包含签名和在URL中包含签名 如何使用?前者在Header中包含签名是否有代码例子 借鉴下。两种方法优缺点如何,不同情景如何选择。
麻烦高人指点 这三点 小弟是否理解有误。 谢谢
oss如何使用 oss使用访问 oss使用如何使用 ssh如何使用 使用ssh访问
分享到
取消 提交回答
全部回答(3)
  • 蘑蘑茶
    2015-03-30 08:34:52
    回2楼deadbeef的帖子
    老大先谢谢了
    一、二两点我都知道其实。
    最重要的是3、访问文件的时候,Bucket私有读写的时候,怎么访问?在Header中包含签名和在URL中包含签名 如何使用? 前者在Header中包含签名是否有代码例子 借鉴下。两种方法优缺点如何,不同情景如何选择。
    比如我现在用的discuz phpwind或者是java某个程序等程序,我知道上传文件模块,使用阿里云的oss sdk修改上传模块代码,就可以实现上传功能,对吧?
    但是不同页面使用oss上面的文件(图片、其他类型的文件),如何能让我的程序修改的最小,访问oss呢?
    在URL中包含签名我感觉麻烦,代码修改量比较多,而 在Header中包含签名 代码又是如何修改呢 我在docs.aliyun.com  oss里面都没有找到详细的说明和使用方法。请指点下 。

    -------------------------

    ReOSS如何访问?如何使用?
    在Header中包含签名
    用户可以在HTTP请求中增加Authorization(授权)的Head来包含签名(Signature)信息,表明这个消息已被授权。

    Authorization字段计算的方法

    "Authorization: OSS " + Access Key Id + ":" + Signature

    Signature = base64(hmac-sha1(AccessKeySecret,
                VERB + "\n"
                + CONTENT-MD5 + "\n"
                + CONTENT-TYPE + "\n"
                + DATE + "\n"
                + CanonicalizedOSSHeaders
                + CanonicalizedResource))


    有看到官方的文档 但是实在没有弄明白咋使用哦 ?

    -------------------------

    ReOSS如何访问?如何使用?
    老大先谢谢了
    cloudfs for oss 我会了解的 等我了解了 在Header中包含签名和在URL中包含签名 如何使用? 再对比你的cloudfs for oss

    在Header中包含签名和在URL中包含签名 如何使用?前者在Header中包含签名是否有代码例子 借鉴下。两种方法优缺点如何,不同情景如何选择。  

    比如我现在用的discuz phpwind或者是java某个程序等程序,我知道上传文件模块,使用阿里云的oss sdk修改上传模块代码,就可以实现上传功能,对吧?
    但是不同页面使用oss上面的文件(图片、其他类型的文件),如何能让我的程序修改的最小,访问oss呢?
    在URL中包含签名我感觉麻烦,代码修改量比较多,而 在Header中包含签名 代码又是如何修改呢 我在docs.aliyun.com  oss里面都没有找到详细的说明和使用方法。请指点下 。
    0 0
  • deadbeef
    2015-03-28 06:39:18
    1. 是的。另外,HTTP API是有公开文档的,如果官方的SDK不支持你的语言,你也可以自己写一个SDK。
    2. 是的
    3. java sdk的例子参考: http://docs.aliyun.com/?spm=5176.100055.3.4.PkiIbZ#/oss/sdk/java-sdk&get-started
        具体如何签名,你可以仔细阅读一下API文档,然后找一个sdk的实现来看看,应该是不难的。
    0 0
  • 云语科技
    2015-03-27 12:27:52
    ReOSS如何访问?如何使用?
    上传文件,如果你是文件上传管理,目前官方和民间都有比较方便使用的工具了;如果是要集成到自己的程序你,需要使用官方对应语言的SDK。

    URL签名的例子,在每个语言的SDK包里面都已经提供好了,可以参考SDK;如果希望自己实现,就参考官方API文档,里面有详细说明签名应该怎么计算出来。

    关于访问权限,官方API文档的描述:
    OSS 提供 ACL (Access Control List Access Control ListAccess Control ListAccess Control List Access Control List Access Control List Access Control ListAccess Control List )权限控制方法, OSS ACL ACL提供 BucketBucket Bucket Bucket级别的权限访问控制, BucketBucket Bucket Bucket目前有三种访问权限: 目前有三种访问权限: public public-read readread-writewrite ,public public-read readread和 private private ,它们的含义如下: ,它们的含义如下:
     publicpublic public -readread -writewrite write:任何人(包括匿名访问)都可以对该 bucket bucket bucket中的 object object进行 PUTPUT ,Get Get和 Delete Delete 操作;所有这些产生的费用由该 操作;所有这些产生的费用由该 bucket bucket bucket的创建者承担,请慎用该权限。
     publicpublic public -readread :只有该 bucket bucket bucket的创建者可以对该 的创建者可以对该 bucket bucket bucket内的 Object ObjectObject进行 写操作(包括 写操作(包括 PutPut 和 Delete Object Delete Object Delete Object Delete ObjectDelete Object);任何人(包括匿名访问)可以对该 );任何人(包括匿名访问)可以对该 );任何人(包括匿名访问)可以对该 );任何人(包括匿名访问)可以对该 );任何人(包括匿名访问)可以对该 );任何人(包括匿名访问)可以对该 bucket bucket bucket中的 object object进行读操作( Get Object Get Object Get Object)。
     privateprivate private private:只有该 bucket bucket bucket的创建者可以对该 bucket bucketbucket bucket内的 Object ObjectObject进行读写 操作(包括 操作(包括 PutPut 、Delete Delete 和 Get Object Get Object Get Object);其他人无法访问该 );其他人无法访问该 );其他人无法访问该 );其他人无法访问该 BucketBucket Bucket Bucket内的 Object ObjectObject。
    用户新 创建一个BucketBucket Bucket Bucket时,如果不指定 BucketBucket Bucket Bucket权限, OSS 会自动为该 会自动为该 BucketBucket Bucket Bucket设置 private private 权限。对于一个已经存在的 权限。对于一个已经存在的 BucketBucket Bucket Bucket,只有它的创建者可以 ,只有它的创建者可以 通 过 OSS 的 Put Bucket AclPut Bucket Acl Put Bucket Acl Put Bucket Acl Put Bucket Acl Put Bucket AclPut Bucket AclPut Bucket Acl接口 修改该 BucketBucket BucketBucketBucket的

    -------------------------

    ReOSS如何访问?如何使用?
    你的运行环境如果是Linux,可以直接使用我们的cloudfs for oss。你的phpwind一行代码也不用写,就可以把OSS作为一个无限大的硬盘来使用。

    参考这个帖子,Linux下把OSS存储变成本地的硬盘   http://bbs.aliyun.com/read/233791.html?spm=5176.7189909.0.0.c8rww5

    免费,强大,有问题有专人支持解答。

    -------------------------

    ReOSS如何访问?如何使用?
    你如果使用官方的Java或者PHP SDK,这个签名的工作已经内置在SDK内部了,你不需要去关心签名的事情,只需要按照SDK文档调用相应的文件上传接口就可以。

    官方提供的OSS API文档,其目的是描述OSS各种接口(这里的接口指的是OSS基于http协议定义的各种操作接口,区别于SDK中对应的各种编程语言的编程接口)的详细字段以及构建方法,用于指导第三方SDK开发;比如OSS目前官方没有C/C++ SDK,如果需要C/C++程序想要访问OSS,就需要自己去编程实现OSS的接口。

    回到你的问题,你现在用JAVA或者PHP,官方都有SDK,详细去看官方的SDK文档会更快和更有帮助。

    希望能够解答你的问题。
    0 0
添加回答
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

相似问题
最新问题