| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | <?phprequire_once __DIR__ . '/Common.php';use OSS\OssClient;$bucket = Common::getBucketName();$ossClient = Common::getOssClient();if (is_null($ossClient)) exit(1);//*******************************简单使用***************************************************************/** putObject 使用callback上传内容到oss文件  * callbackurl参数指定请求回调的服务器url  * callbackbodytype参数可为application/json或application/x-www-form-urlencoded, 可选参数,默认为application/x-www-form-urlencoded  * OSS_CALLBACK_VAR参数可以不设置  */$url =     '{        "callbackUrl":"callback.oss-demo.com:23450",        "callbackHost":"oss-cn-hangzhou.aliyuncs.com",        "callbackBody":"bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&imageInfo.height=${imageInfo.height}&imageInfo.width=${imageInfo.width}&imageInfo.format=${imageInfo.format}&my_var1=${x:var1}&my_var2=${x:var2}",         "callbackBodyType":"application/x-www-form-urlencoded"    }';$var =     '{        "x:var1":"value1",        "x:var2":"值2"    }';$options = array(OssClient::OSS_CALLBACK => $url,                 OssClient::OSS_CALLBACK_VAR => $var                );$result = $ossClient->putObject($bucket, "b.file", "random content", $options);Common::println($result['body']);Common::println($result['info']['http_code']);/**  * completeMultipartUpload 使用callback上传内容到oss文件  * callbackurl参数指定请求回调的服务器url  * callbackbodytype参数可为application/json或application/x-www-form-urlencoded, 可选参数,默认为application/x-www-form-urlencoded  * OSS_CALLBACK_VAR参数可以不设置  */  $object = "multipart-callback-test.txt";$copiedObject = "multipart-callback-test.txt.copied";$ossClient->putObject($bucket, $copiedObject, file_get_contents(__FILE__));/**  *  step 1. 初始化一个分块上传事件, 也就是初始化上传Multipart, 获取upload id  */$upload_id = $ossClient->initiateMultipartUpload($bucket, $object);/** * step 2. uploadPartCopy */$copyId = 1;$eTag = $ossClient->uploadPartCopy($bucket, $copiedObject, $bucket, $object, $copyId, $upload_id);$upload_parts[] = array(    'PartNumber' => $copyId,    'ETag' => $eTag,    );$listPartsInfo = $ossClient->listParts($bucket, $object, $upload_id);/** * step 3. */$json =     '{        "callbackUrl":"callback.oss-demo.com:23450",        "callbackHost":"oss-cn-hangzhou.aliyuncs.com",        "callbackBody":"{\"mimeType\":${mimeType},\"size\":${size},\"x:var1\":${x:var1},\"x:var2\":${x:var2}}",        "callbackBodyType":"application/json"    }';$var =     '{        "x:var1":"value1",        "x:var2":"值2"    }';$options = array(OssClient::OSS_CALLBACK => $json,                 OssClient::OSS_CALLBACK_VAR => $var);$result = $ossClient->completeMultipartUpload($bucket, $object, $upload_id, $upload_parts, $options);Common::println($result['body']);Common::println($result['info']['http_code']);
 |