@@ -4576,6 +4576,86 @@ def update_object_meta(self, Bucket, Key, **kwargs):
45764576 )
45774577 return response
45784578
4579+ def put_symlink (self , Bucket , SymlinkName , SymlinkTarget , ** kwargs ):
4580+ """创建软链接
4581+
4582+ :param Bucket(string): 存储桶名称.
4583+ :param SymlinkName(string): 软链接路径.
4584+ :param SymlinkTarget(string): 目标路径.
4585+ :kwargs(dict): 公共请求头部.
4586+ :return: 请求的响应头部.
4587+
4588+ .. code-block:: python
4589+
4590+ config = CosConfig(Region=region, SecretId=secret_id, SecretKey=secret_key, Token=token) # 获取配置对象
4591+ client = CosS3Client(config)
4592+ # 创建软链接
4593+ response = client.put_symlink(
4594+ Bucket='bucket-1250000000',
4595+ SymlinkName='testsym.txt',
4596+ SymlinkTarget='test.txt',
4597+ )
4598+ """
4599+
4600+ headers = mapped (kwargs )
4601+ headers ['x-cos-symlink-target' ] = SymlinkTarget
4602+ params = {'symlink' : '' }
4603+
4604+ url = self ._conf .uri (bucket = Bucket , path = SymlinkName )
4605+ logger .debug ("put symlink, url=:{url} ,headers=:{headers}" .format (
4606+ url = url ,
4607+ headers = headers ))
4608+ rt = self .send_request (
4609+ method = 'PUT' ,
4610+ url = url ,
4611+ bucket = Bucket ,
4612+ auth = CosS3Auth (self ._conf , SymlinkName , params = params ),
4613+ headers = headers ,
4614+ params = params )
4615+ response = dict (** rt .headers )
4616+ return response
4617+
4618+ def get_symlink (self , Bucket , SymlinkName , ** kwargs ):
4619+ """获取软链接本身
4620+
4621+ :param Bucket(string): 存储桶名称.
4622+ :param SymlinkName(string): 软链接路径.
4623+ :kwargs(dict): 公共请求头部.
4624+ :return: 请求的响应头部.
4625+
4626+ .. code-block:: python
4627+
4628+ config = CosConfig(Region=region, SecretId=secret_id, SecretKey=secret_key, Token=token) # 获取配置对象
4629+ client = CosS3Client(config)
4630+ # 获取软链接本身
4631+ response = client.get_symlink(
4632+ Bucket='bucket-1250000000',
4633+ SymlinkName='testsym.txt',
4634+ )
4635+ """
4636+
4637+ headers = mapped (kwargs )
4638+ params = {'symlink' : '' }
4639+
4640+ if 'versionId' in headers :
4641+ params ['versionId' ] = headers ['versionId' ]
4642+ del headers ['versionId' ]
4643+ params = format_values (params )
4644+
4645+ url = self ._conf .uri (bucket = Bucket , path = SymlinkName )
4646+ logger .debug ("get symlink, url=:{url} ,headers=:{headers}" .format (
4647+ url = url ,
4648+ headers = headers ))
4649+ rt = self .send_request (
4650+ method = 'GET' ,
4651+ url = url ,
4652+ bucket = Bucket ,
4653+ auth = CosS3Auth (self ._conf , SymlinkName , params = params ),
4654+ headers = headers ,
4655+ params = params )
4656+ response = dict (** rt .headers )
4657+ return response
4658+
45794659 def put_bucket_encryption (self , Bucket , ServerSideEncryptionConfiguration = {}, ** kwargs ):
45804660 """设置执行存储桶下的默认加密配置
45814661
0 commit comments