访问七牛私有空间资源
访问七牛私有空间资源
AlanCooper 发表于2年前
访问七牛私有空间资源
  • 发表于 2年前
  • 阅读 1255
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: 之前老出现401授权失败的错误,后来发现是原url中未拼接私有空间名
<?php
class get_private_url extends Action {
	var $privilege = Privilege::COACH_GENERAL;
	function filterParam() {
		$this->download_url = filter_input( INPUT_GET, 'url');
		return true;
	}
	function exec() {
		$accessKey = '';
		$secretKey = '';
		// 时间戳生成
		$now = time();
		$date = $now + 24*3600;
		// 下载凭证生成
		$download_url = $this->download_url."?e=".$date;
		$sign = hash_hmac("sha1", $download_url, $secretKey, true);
		$encodedSign = base64_encode($sign);
		$token = $accessKey.":".$encodedSign;
		$realdownloadurl = $download_url."&token=".$token;
		return [ 
				'realdownloadurl' => $realdownloadurl
		];
	}
}
原URL传递形式:http://bucketname.7xnhmh.com2.z0.glb.qiniucdn.com/2.jpg

注意:需要采用七牛SDK中给出的URL安全的Base64编码函数,或者自己来写,但要按照七牛URI的要求对其中的特殊字符统一进行转换,不能直接用PHP库函数自带的Base64编码函数。

$encodedSign = \Qiniu\base64_urlSafeEncode( $sign ) ;

共有 人打赏支持
粉丝 5
博文 67
码字总数 27450
×
AlanCooper
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: