C#开发BIMFACE系列11 服务端API之源文件删除

  • 2019 年 10 月 5 日
  • 筆記

系列目录 【已更新最新开发文章,点击查看详细】

通过BIMFACE控制台或者调用服务接口上传文件成功后,如果不再需要该文件,则可以通过BIMFACE平台提供的“源文件删除”服务接口删除具体的文件。下面详细介绍其使用方法。

请求地址:DELETE https://file.bimface.com/file

说明:根据文件ID删除文件

参数:

请求 path(示例):https://file.bimface.com/file?fileId=1418750515413120

请求 header(示例):"Authorization: Bearer dc671840-bacc-4dc5-a134-97c1918d664b"

HTTP响应示例(200):

{    "code" : "success",    "data" : "object",  // 如果删除成功,则该值为 null    "message" : ""  }

C#实现方法:

 1 /// <summary>   2 ///  根据文件ID删除文件   3 /// </summary>   4 /// <param name="accessToken">令牌</param>   5 /// <param name="fileId">文件ID</param>   6 /// <returns></returns>   7 public virtual FileDeleteResponse DeleteFile(string accessToken, string fileId)   8 {   9     //DELETE https://file.bimface.com/file  10     string url = string.Format(BimfaceConstants.FILE_HOST + "/file?fileId={0}", fileId);  11  12     BimFaceHttpHeaders headers = new BimFaceHttpHeaders();  13     headers.AddOAuth2Header(accessToken);  14  15     try  16     {  17         FileDeleteResponse response;  18  19         HttpManager httpManager = new HttpManager(headers);  20         HttpResult httpResult = httpManager.Delete(url);  21         if (httpResult.Status == HttpResult.STATUS_SUCCESS)  22         {  23             response = httpResult.Text.DeserializeJsonToObject<FileDeleteResponse>();  24         }  25         else  26         {  27             response = new FileDeleteResponse  28             {  29                 Message = httpResult.RefText  30             };  31         }  32  33         return response;  34     }  35     catch (Exception ex)  36     {  37         throw new Exception("[根据文件ID删除文件]发生异常!", ex);  38     }  39 }
其中引用的 httpManager.Delete() 方法如下:
 1 /// <summary>   2 /// HTTP-DELETE方法,(不包含body数据)。   3 /// 发送 HTTP 请求并返回来自 Internet 资源的响应(HTML代码)   4 /// </summary>   5 /// <param name="url">请求目标URL</param>   6 /// <returns>HTTP-POST的响应结果</returns>   7 public HttpResult Delete(string url)   8 {   9     return RequestString(url, null, HttpMethod.DELETE, null);  10 }

其中引用的RequestString()方法,请参考《C#开发BIMFACE系列6 服务端API之获取文件信息》,方法完全一样。

测试

 在BIMFACE的控制台中可以看到我们上传的文件列表

选择任意一个文件的ID来做测试

可以看到删除文件成功。

再次刷新BIMFACE控制台,只剩下了一笔记录,1681963336074720 文件被成功删除。

测试程序如下:

// 根据文件ID删除文件  protected void btnDeleteFile_Click(object sender, EventArgs e)  {      txtFileInfo.Text = string.Empty;        string token = txtAccessToken.Text;      string fileId = txtFileId.Text;        FileApi api = new FileApi();      FileDeleteResponse response = api.DeleteFile(token, fileId);        txtFileInfo.Text = response.Code                       + Environment.NewLine                       + response.Message                       + Environment.NewLine                       + response.Data.ToString2();  }

系列目录 【已更新最新开发文章,点击查看详细】