对象存储

  • 对象存储 > 常见问题 > 其他 >资源访问 >如何获取存储文件的外链接

    如何获取存储文件的外链接

    最近更新时间:2018-08-31 19:23:04

    公开空间

    1. 直接在内容管理界面上获得链接
      blob.png

    2. 通过以下地址访问。

      http://<domain>/<key>
      

      其中<domain>是 bucket 所对应的域名。七牛会给每个 bucket 分配一个测试域名,但由于 测试域名的访问限制,生产环境需要 绑定自定义域名 访问。 <key>可理解为文件名,但可包含文件分隔符等其它字符。可参考:特殊 key 资源的访问
      注意: key必须采用utf8编码,如使用非utf8编码访问七牛云将反馈错误

    3. 批量获取下载链接

    私有空间

    1.私有空间区别于公开空间,私有空间在控制台无法直接获取外链

    2.私有资源必须通过临时 [下载凭证] (/kodo/manual/download-token)(downloadToken)进行下载,如下:

    [GET] http://<domain>/<key>?e=<deadline>&token=<downloadToken>
    

    注意,尖括号不是必需,代表替换项。

    deadline 由服务器时间加上 指定秒数 表示过期时间点。默认 3600 秒,服务器时间需校准,不要与标准时间相差太大。 downloadToken 可以使用 SDK 提供的方法生成。

    以下提供python生成私有空间外链的参考代码,更多详细请参考官方sdk

    # -*- coding: utf-8 -*-
    # flake8: noqa
    import requests
    
    from qiniu import Auth
    
    #AK、SK可在控制台的个人中心里面获取
    access_key = 'AK'
    secret_key = 'SK'
    
    q = Auth(access_key, secret_key)
    
    #有两种方式构造base_url的形式
    base_url = 'http://%s/%s' % (bucket_domain, key)
    
    #或者直接输入url的方式下载
    base_url = 'http://domain/key'
    
    #可以设置token过期时间
    private_url = q.private_download_url(base_url, expires=3600)
    
    print(private_url)
    r = requests.get(private_url)
    assert r.status_code == 200
    
    以上内容是否对您有帮助?
  • Qvm free helper
    Close