Example #1
0
    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";
Example #2
0
    $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";