功能说明
删除高性能桶中的单个对象(DELETE Object)。对高性能桶发起删除请求时,SDK 通过
RapidCredentialTransport 自动完成会话鉴权。方法原型
func (s *ObjectService) Delete(ctx context.Context, name string, opt ...*ObjectDeleteOptions) (*Response, error)
参数说明
参数名称 | 参数描述 | 类型 | 是否必选 |
ctx | 请求上下文,用于控制超时与取消 | context.Context | 是 |
name | 对象键(Object Key),即待删除对象在桶中的完整路径 | string | 是 |
opt | 删除选项,高性能桶无额外可选项,可不传 | ...*ObjectDeleteOptions | 否 |
返回结果说明
参数名称 | 参数描述 | 类型 |
*Response | 响应对象,删除成功返回 204 No Content | *cos.Response |
error | 错误信息,成功时为 nil | error |
使用案例
package mainimport ("context""log""net/http""net/url""os""time""github.com/tencentyun/cos-go-sdk-v5")func main() {u, _ := url.Parse("https://examplebucket-x--1250000000.cosrapid.ap-guangzhou.myqcloud.com")b := &cos.BaseURL{BucketURL: u}base := &cos.AuthorizationTransport{SecretID: os.Getenv("SECRETID"),SecretKey: os.Getenv("SECRETKEY"),}c := cos.NewClient(b, &http.Client{Transport: cos.NewRapidCredentialTransport(base),Timeout: 30 * time.Second,})ctx := context.Background()name := "exampleobject.txt"_, err := c.Object.Delete(ctx, name)if err != nil {log.Fatalf("DeleteObject failed: %v", err)}log.Println("DeleteObject OK")}
注意事项
删除操作具有幂等性,删除不存在的对象同样返回成功(204)。
对象键不能为空,也不能为
/,否则会直接返回错误。如需一次删除多个对象,请使用 批量删除对象 以减少请求次数。