我们的服务器都是 HTTPS 的,下载文件如果是 HTTP 就会报错,而七牛的下载连接只能生成 HTTP 的,不能生成 HTTPS 的链接。而文档说支持 HTTPS 下载的。
不能用 xxx.qiniudn.com 这样的二级域名,只能用 dn-xxx.qbox.me 域名。样例:https://dn-abc.qbox.me/1.txt
看了下代码,居然写死 http:
// 根据空间(Bucket)的域名,以及文件的 key,获得 baseUrl。
// 如果空间是 public 的,那么通过 baseUrl 可以直接下载文件内容。
// 如果空间是 private 的,那么需要对 baseUrl 进行私有签名得到一个临时有效的 privateUrl 进行下载。
//
func MakeBaseUrl(domain, key string) (baseUrl string) {
return "http://" + domain + "/" + url.Escape(key)
}
我了个去,难道要自己重写这个方法?自己拼 url ?
是的,你要自己签名,你参考下文档
http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html