Perl
Perl
Initiate Resumable Upload Session
See more Google Cloud Storage Examples
Initiate a Google Cloud Storage resumable upload session..Chilkat Perl Downloads
use chilkat();
$success = 0;
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
$http = chilkat::CkHttp->new();
$jsonToken = chilkat::CkJsonObject->new();
$success = $jsonToken->LoadFile("qa_data/tokens/googleCloudStorage.json");
if ($success == 0) {
print $jsonToken->lastErrorText() . "\r\n";
exit;
}
$jsonMetaData = chilkat::CkJsonObject->new();
$jsonMetaData->UpdateString("contentType","image/jpeg");
# Adds the "Authorization: Bearer <access_token>" header..
$http->put_AuthToken($jsonToken->stringOf("access_token"));
$http->SetUrlVar("bucket_name","chilkat-bucket-b");
$http->SetUrlVar("object_name","penguins2.jpg");
$url = "https://storage.googleapis.com/upload/storage/v1/b/{$bucket_name}/o?uploadType=resumable&name={$object_name}";
$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpJson("POST",$url,$jsonMetaData,"application/json",$resp);
if ($success == 0) {
print $http->lastErrorText() . "\r\n";
exit;
}
$statusCode = $resp->get_StatusCode();
print "response status code = " . $statusCode . "\r\n";
$sessionUrl = "";
if ($statusCode != 200) {
print $resp->bodyStr() . "\r\n";
}
else {
# The session URL will be used to upload the file in chunks, in subsequent HTTP POSTs...
$sessionUrl = $resp->getHeaderField("Location");
print "Session URL = " . $sessionUrl . "\r\n";
}