
# 批量删除对象
#### 功能说明
批量删除指定桶中的多个对象。
#### 方法定义
```
ObsClient.deleteObjects
```
#### 请求参数
| **字段名**      || **类型**                                                                      | **约束** | **说明**                                                                                                  |
|:--|---|:---|:---|:---|
| Bucket       || String                                                                      | 必选     | 桶名。                                                                                                     |
| RequestDate  || String 或 Date | 可选     | 指定请求时间。 说明： 当为String类型时，必须符合ISO8601或RFC822规范。 |
| Objects      || Array                                                                       | 必选     | 待删除的对象列表。                                                                                               |
| - | Key       | String                                                                      | 必选     | 待删除对象的名称。                                                                                               |
| - | VersionId | String                                                                      | 可选     | 待删除对象的版本号。                                                                                              |
| Quiet        || Boolean                                                                     | 可选     | 批量删除对象的响应方式，false表示详细模式，返回删除成功和删除失败的所有结果；true表示简单模式，只返回删除过程中出错的结果。                                      |
   
#### 返回结果（InterfaceResult）
| **字段名**                  || **类型** | **说明**          |
|:--|---|:---|:---|
| RequestId                || String | OBS服务端返回的请求ID。  |
| Deleteds                 || Array  | 删除成功的对象列表。      |
| - | Key                   | String | 删除成功的对象名。       |
| - | VersionId             | String | 删除成功的对象版本号。     |
| - | DeleteMarker          | String | 标识删除的对象是否是删除标记。 |
| - | DeleteMarkerVersionId | String | 删除标记的版本号。       |
| Errors                   || Array  | 删除失败的对象列表。      |
| - | Key                   | String | 删除失败的对象名。       |
| - | VersionId             | String | 删除失败的对象版本号。     |
| - | Code                  | String | 删除失败的错误码。       |
| - | Message               | String | 删除失败的错误消息。      |
   
#### 代码样例
```
obsClient.deleteObjects({
       Bucket:'bucketname',
       Quiet:false,
       Objects:[{Key:'objectkey'},{Key:'objectkey2'}]
},function (err, result) {
       if(err){
              console.error('Error-->' + err);
       }else{
              if(result.CommonMsg.Status < 300){
                     console.log('RequestId-->' + result.InterfaceResult.RequestId);
                     console.log('Deleteds:');
                     for(var i=0;i<result.InterfaceResult.Deleteds.length;i++){
                           console.log('Deleted[' + i + ']:');
                           console.log('Key-->'+result.InterfaceResult.Deleteds[i]['Key']);
                           console.log('VersionId-->' + result.InterfaceResult.Deleteds[i]['VersionId']);
                           console.log('DeleteMarker-->' + result.InterfaceResult.Deleteds[i]['DeleteMarker']);
                           console.log('DeleteMarkerVersionId-->' + result.InterfaceResult.Deleteds[i]['DeleteMarkerVersionId']);
                     }
                     console.log('Errors:');
                     for(var i=0;i<result.InterfaceResult.Errors.length;i++){
                           console.log('Error[' + i + ']:');
                           console.log('Key-->' + result.InterfaceResult.Errors[i]['Key']);
                           console.log('VersionId-->' + result.InterfaceResult.Errors[i]['VersionId']);
                           console.log('Code-->' + result.InterfaceResult.Errors[i]['Code']);
                           console.log('Message-->' + result.InterfaceResult.Errors[i]['Message']);
                     }
              }else{
                     console.log('Code-->' + result.CommonMsg.Code);
                     console.log('Message-->' + result.CommonMsg.Message);
              }
       }
});
```
