print "Authorization:" . $Authorization . "\n"; return $Authorization; //$Authorization: //bce-auth-v1/97659fdf3ab547e2a9f71dfcd6659a8b2015-08-27T03:50:33Z/3600/content-length;host;x-bce-date;/5290e5669befd7f44dd362e00c2a4cc5edbee0bc925bceb15e8a9fcb91389201 } //查询媒资信息示例 $mediaId = "mda-gfyhginvv3b00rpz"; //替换成你的媒资ID $host = "vod.baidubce.com"; $path = "/v1/media/" . $mediaId; $url = "http://" . $host . $path; $method = "GET"; $parms = array(); //替换成STS获取的sessionToken $stsSessionToken = "MjUzZjQzNTY4OTE0NDRkNjg3N2E4YzJhZTc4YmU5ZDh8AAAAADgBAADDwfoCSQ/6VjiLiZ4+S7xAC9LXn2EVF4EEHyEI6Jys8K7jYe+ov0SzR2WRXl5CFNy+EfBUFW2+QpDyzGRTPddluKjZacQF6x3wPJm2s5lj4ZvdVmZcdOPLUVG2fft4zLUDW9IEUqEwinHQhmRFVcC2xagba2AvKMh+Wmcx3T+3Iu/nWPF2agtRIdfy/7NcrpXcb/DbDqqqxPzX1px1q/mbGowAzhnq+plj+g9oKOfdnRLCs6JDrX4XPtSlg9uOE1c="; date_default_timezone_set('UTC'); $timestamp = date("Y-m-d") . "T" . date("H:i:s") . "Z"; $Authorization = getSigner($host, $method, $path, $parms, $timestamp); $data = array(); $data_string = json_encode($data); $head = array("Content-Type:text/plain", "Content-Length:{$filesize}", "Authorization:{$Authorization}", "x-bce-date:{$timestamp}", "x-bce-security-token:{$stsSessionToken}"); $curlp = curl_init(); curl_setopt($curlp, CURLOPT_URL, $url); curl_setopt($curlp, CURLOPT_HTTPHEADER, $head); curl_setopt($curlp, CURLOPT_POSTFIELDS, $data_string); curl_setopt($curlp, CURLOPT_POST, 0); curl_setopt($curlp, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curlp); curl_close($curlp); echo $output; print "\n";
$httputil = new HttpUtil(); $CanonicalString = $httputil->getCanonicalQueryString($parms); $CanonicalURI = $path; $Method = $httpMethod; $CanonicalRequest = $Method . "\n" . $CanonicalURI . "\n" . $CanonicalString . "\n" . $CanonicalHeaders2; //print "CanonicalRequest:" . $CanonicalRequest . "\n"; $Signature = hash_hmac('SHA256', $CanonicalRequest, $SigningKey); //print "Signature:" . $Signature . "\n"; $Authorization = "bce-auth-v1/{$AK}/" . $timestamp . "/{$expirationPeriodInSeconds}/{$CanonicalHeaders1}/{$Signature}"; //print "Authorization:" . $Authorization . "\n"; return $Authorization; //$Authorization: //bce-auth-v1/97659fdf3ab547e2a9f71dfcd6659a8b2015-08-27T03:50:33Z/3600/content-length;host;x-bce-date;/5290e5669befd7f44dd362e00c2a4cc5edbee0bc925bceb15e8a9fcb91389201 } $url = "http://sts.bj.baidubce.com/v1/sessionToken"; date_default_timezone_set('UTC'); $timestamp = date("Y-m-d") . "T" . date("H:i:s") . "Z"; $Authorization = getSigner("POST", "/v1/sessionToken", array(), $timestamp); $postdata = array('id' => 'ststestid', 'accessControlList' => json_encode(array('eid' => 'acltesteid', 'service' => 'bce:bos', 'region' => 'bj', 'effect' => 'Allow', 'resource' => json_encode(array('yourbucketname1/*', 'yourbucketname2')), 'permission' => json_encode(array('READ', 'WRITE'))))); $data_string = json_encode($postdata); $head = array("Content-Type:text/plain", "Content-Length:{$filesize}", "Authorization:{$Authorization}", "x-bce-date:{$timestamp}"); $curlp = curl_init(); curl_setopt($curlp, CURLOPT_URL, $url); curl_setopt($curlp, CURLOPT_HTTPHEADER, $head); curl_setopt($curlp, CURLOPT_POSTFIELDS, $data); curl_setopt($curlp, CURLOPT_POST, 1); curl_setopt($curlp, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curlp); curl_close($curlp); echo $output; print "\n";