117 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			117 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
<?php
 | 
						|
require_once __DIR__ . '/Common.php';
 | 
						|
 | 
						|
use OSS\OssClient;
 | 
						|
use OSS\Core\OssException;
 | 
						|
 | 
						|
$ossClient = Common::getOssClient();
 | 
						|
if (is_null($ossClient)) exit(1);
 | 
						|
$bucket = Common::getBucketName();
 | 
						|
 | 
						|
//******************************* Simple Usage****************************************************************
 | 
						|
 | 
						|
//Set requester payment mode
 | 
						|
$ossClient->putBucketRequestPayment($bucket, "Requester");
 | 
						|
 | 
						|
//Get requester payment mode configuration
 | 
						|
$payer = $ossClient->getBucketRequestPayment($bucket);
 | 
						|
Common::println("bucket $bucket Payer:".$payer.PHP_EOL);
 | 
						|
 | 
						|
//Third-party paid access to Object
 | 
						|
$options = array(
 | 
						|
	OssClient::OSS_HEADERS => array(
 | 
						|
		OssClient::OSS_REQUEST_PAYER => 'requester',
 | 
						|
	));
 | 
						|
 | 
						|
$content = "hello";
 | 
						|
$object = "object";
 | 
						|
 | 
						|
//PutObject interface to specify the payer
 | 
						|
$ossClient->putObject($bucket, $object, $content, $options);
 | 
						|
 | 
						|
// GetObject interface to specify the payer
 | 
						|
$ossClient->getObject($bucket, $object, $options);
 | 
						|
 | 
						|
// DeleteObject interface to specify the payer
 | 
						|
$ossClient->deleteObject($bucket, $object, $options);
 | 
						|
 | 
						|
//******************************* For complete usage, see the following functions ****************************************************
 | 
						|
 | 
						|
putBucketRequestPayment($ossClient,$bucket);
 | 
						|
getBucketRequestPayment($ossClient,$bucket);
 | 
						|
setObjectPayment($ossClient,$bucket);
 | 
						|
 | 
						|
/**
 | 
						|
 * Set requester payment mode
 | 
						|
 * @param OssClient $ossClient OssClient instance
 | 
						|
 * @param string $bucket Name of the bucket to create
 | 
						|
 * @return null
 | 
						|
 */
 | 
						|
function putBucketRequestPayment($ossClient, $bucket)
 | 
						|
{
 | 
						|
	try {
 | 
						|
		$ossClient->putBucketRequestPayment($bucket, "Requester");
 | 
						|
	} catch (OssException $e) {
 | 
						|
		printf(__FUNCTION__ . ": FAILED\n");
 | 
						|
		printf($e->getMessage() . "\n");
 | 
						|
		return;
 | 
						|
	}
 | 
						|
	
 | 
						|
	print(__FUNCTION__ . ": OK" . "\n");
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
 * Get payment mode of bucket
 | 
						|
 * @param OssClient $ossClient OssClient instance
 | 
						|
 * @param string $bucket Name of the bucket to create
 | 
						|
 * @return null
 | 
						|
 */
 | 
						|
function getBucketRequestPayment($ossClient, $bucket)
 | 
						|
{
 | 
						|
	try {
 | 
						|
		$payer = $ossClient->getBucketRequestPayment($bucket);
 | 
						|
		print("bucket $bucket Payer:".$payer.PHP_EOL);
 | 
						|
	} catch (OssException $e) {
 | 
						|
		printf(__FUNCTION__ . ": FAILED\n");
 | 
						|
		printf($e->getMessage() . "\n");
 | 
						|
		return;
 | 
						|
	}
 | 
						|
	
 | 
						|
	print(__FUNCTION__ . ": OK" . "\n");
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * Set payment mode of object
 | 
						|
 * @param OssClient $ossClient OssClient instance
 | 
						|
 * @param string $bucket Name of the bucket to create
 | 
						|
 * @return null
 | 
						|
 */
 | 
						|
function setObjectPayment($ossClient,$bucket){
 | 
						|
	// Specify the payment model for the requester.
 | 
						|
	$options = array(
 | 
						|
		OssClient::OSS_HEADERS => array(
 | 
						|
			OssClient::OSS_REQUEST_PAYER => 'requester',
 | 
						|
		));
 | 
						|
	
 | 
						|
	try {
 | 
						|
		
 | 
						|
		$content = "hello";
 | 
						|
		$object = "object";
 | 
						|
		//PutObject interface to specify the payer
 | 
						|
		$ossClient->putObject($bucket, $object, $content, $options);
 | 
						|
		// GetObject interface to specify the payer
 | 
						|
		$ossClient->getObject($bucket, $object, $options);
 | 
						|
		// DeleteObject interface to specify the payer
 | 
						|
		$ossClient->deleteObject($bucket, $object, $options);
 | 
						|
	} catch (OssException $e) {
 | 
						|
		printf(__FUNCTION__ . ": FAILED\n");
 | 
						|
		printf($e->getMessage() . "\n");
 | 
						|
		return;
 | 
						|
	}
 | 
						|
	
 | 
						|
	print(__FUNCTION__ . ": OK" . "\n");
 | 
						|
}
 | 
						|
 | 
						|
 |