$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 Upload content to an OSS file using callback. * callbackurl specifies the server url for the request callback * The callbackbodytype can be application/json or application/x-www-form-urlencoded,the optional parameters,the default for the application/x - WWW - form - urlencoded * Users can choose not to set OSS_BACK_VAR. */ $object = "multipart-callback-test.txt"; $copiedObject = "multipart-callback-test.txt.copied"; $ossClient->putObject($bucket, $copiedObject, file_get_contents(__FILE__)); /** * step 1. Initialize a block upload event, that is, a multipart upload process to get an 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']);