本文详细介绍如何获取BIMFACE平台中所有上传过的文件信息列表。

请求地址:GET https://file.bimface.com/files

说明:根据多种查询条件获取文件详细信息列表,支持分页

参数:

请求 path(示例):https://file.bimface.com/files

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

HTTP响应示例(200):

{
"code" : "success",
"data" : [ {
"createTime" : "2017-11-09 13:25:03",
"etag" : "19349858cjs98ericu989",
"fileId" : ,
"length" : ,
"name" : "-1F.rvt",
"status" : "success",
"suffix" : "rvt"
} ],
"message" : ""
}

注意上面返回的data内容是一个数组。

C#实现方法:

 /// <summary>
/// 根据多种查询条件获取文件详细信息列表,支持分页
/// </summary>
/// <param name="accessToken">令牌</param>
/// <param name="startTime">起始日期,格式为 yyyy-MM-dd。默认为空,查询所有</param>
/// <param name="endTime">截止日期,格式为 yyyy-MM-dd。默认为空,查询所有</param>
/// <param name="rows">查询结果数, 默认为100, 最大500。默认100</param>
/// <param name="offset">查询结果偏移,从查询结果的第offset条开始返回数据。默认-1,查询所有</param>
/// <param name="status">文件状态,uploading,success,failure。默认为空,查询所有</param>
/// <param name="suffix">文件后缀。默认为空,查询所有</param>
/// <returns></returns>
public virtual FileInfoListGetResponse GetFileInfoList(string accessToken, string startTime = "", string endTime = "", long rows = , long offset = -, string status = "", string suffix = "")
{
FileInfoListGetResponse response = new FileInfoListGetResponse(); #region 校验
if (rows < || rows > )
{
response.Message = "参数[rows]超出范围。要求控制在1到500之间!"; return response;
} #endregion //GET https://file.bimface.com/files
string url = BimfaceConstants.FILE_HOST + "/files";
url = url + "?rows=" + rows;
if (!string.IsNullOrWhiteSpace(startTime))
{
url = url + "?rows=" + rows;
}
if (!string.IsNullOrWhiteSpace(endTime))
{
url = url + "?endTime=" + endTime;
}
if (offset >= )
{
url = url + "?offset=" + offset;
}
if (!string.IsNullOrWhiteSpace(status))
{
url = url + "?status=" + status;
}
if (!string.IsNullOrWhiteSpace(suffix))
{
url = url + "?suffix=" + suffix;
} BimFaceHttpHeaders headers = new BimFaceHttpHeaders();
headers.AddOAuth2Header(accessToken); try
{
HttpManager httpManager = new HttpManager(headers);
HttpResult httpResult = httpManager.Get(url);
if (httpResult.Status == HttpResult.STATUS_SUCCESS)
{
response = httpResult.Text.DeserializeJsonToObject<FileInfoListGetResponse>();
}
else
{
response = new FileInfoListGetResponse
{
Message = httpResult.RefText
};
} return response;
}
catch (Exception ex)
{
throw new Exception("[获取文件信息列表]发生异常!", ex);
}
}
其中引用的 httpManager.Get() 方法,请参考《C#开发BIMFACE系列6 服务端API之获取文件信息》,方法完全一样。
测试

在BIMFACE的控制台中可以看到我们上传的文件列表,共计2个文件。

下面通过调用上述的GetFileInfoList()方法来测试,结果如下,与后台的文件列表一致。

测试程序如下:
// 获取文件信息列表
protected void btnGetFileList_Click(object sender, EventArgs e)
{
txtFileInfo.Text = string.Empty; string token = txtAccessToken.Text; FileApi api = new FileApi();
FileInfoListGetResponse response = api.GetFileInfoList(token); List<FileInfoGetEntity> fileInfoList = response.Data;
StringBuilder sbFiles = new StringBuilder();
foreach(FileInfoGetEntity fileInfo in fileInfoList)
{
sbFiles.AppendLine("名称:" + fileInfo.ToString());
} txtFileInfo.Text = response.Code
+ Environment.NewLine
+ response.Message
+ Environment.NewLine
+ "共获取 " + fileInfoList.Count + " 个文件。"
+ Environment.NewLine
+ sbFiles;
}

												

C#开发BIMFACE系列7 服务端API之获取文件信息列表的更多相关文章

  1. C#开发BIMFACE系列6 服务端API之获取文件信息

    在<C#开发BIMFACE系列4 服务端API之源上传文件>.<C#开发BIMFACE系列5 服务端API之文件直传>两篇文章中详细介绍了如何将本地文件上传到BIMFACE服务 ...

  2. C#开发BIMFACE系列8 服务端API之获取文件上传状态信息

    系列目录     [已更新最新开发文章,点击查看详细] 在BIMFACE控制台上传文件,上传过程及结束后它会自动告诉你文件的上传状态,目前有三种状态:uploading,success,failure ...

  3. C#开发BIMFACE系列9 服务端API之获取应用支持的文件类型

    系列目录     [已更新最新开发文章,点击查看详细] BIMFACE最核心能力之一是工程文件格式转换.无需安装插件,支持数十种工程文件格式在云端转换,完整保留原始文件信息.开发者将告别原始文件解析烦 ...

  4. C#开发BIMFACE系列10 服务端API之获取文件下载链接

    系列目录     [已更新最新开发文章,点击查看详细] 通过BIMFACE控制台或者调用服务接口上传文件成功后,默认场景下需要下载该源文件,下载文件一般需要知道文件的下载链接即可.BIMACE平台提供 ...

  5. C#开发BIMFACE系列3 服务端API之获取应用访问凭证AccessToken

    系列目录     [已更新最新开发文章,点击查看详细] BIMFACE 平台为开发者提供了大量的服务器端 API 与 JavaScript API,用于二次开发 BIM 的相关应用. BIMFACE ...

  6. C#开发BIMFACE系列17 服务端API之获取模型数据2:获取构件材质列表

    系列目录     [已更新最新开发文章,点击查看详细] 在上一篇<C#开发BIMFACE系列16 服务端API之获取模型数据1:查询满足条件的构件ID列表>中介绍了获取单文件(模型)的所有 ...

  7. C#开发BIMFACE系列18 服务端API之获取模型数据3:获取构件属性

    系列目录     [已更新最新开发文章,点击查看详细] 本篇主要介绍如何获取单文件/模型下单个构建的属性信息. 请求地址:GET https://api.bimface.com/data/v2/fil ...

  8. C#开发BIMFACE系列19 服务端API之获取模型数据4:获取多个构件的共同属性

    系列目录     [已更新最新开发文章,点击查看详细] 在前几篇博客中介绍了一个三维文件/模型包含多个构建,每个构建又是由多种材质组成,每个构建都有很多属性.不同的构建也有可能包含相同的属性. 上图中 ...

  9. C#开发BIMFACE系列21 服务端API之获取模型数据6:获取单模型的楼层信息

    系列目录     [已更新最新开发文章,点击查看详细] 一个文件/模型中可能包含多个楼层信息,获取楼层信息对于前端页面的动态展示非常有帮助.本篇介绍获取一个文件/模型中可能包含多个楼层信息的详细方法. ...

随机推荐

  1. manjaro配置记录

    一.换源 官方镜像源(包括 core, extra, community, multilib ) sudo pacman-mirrors -i -c China -m rank //更新镜像排名 su ...

  2. S2第四章

  3. 私有网络(VPC)概述

    1 什么是私有网络(VPC) 私有网络是一块可用户自定义的网络空间,您可以在私有网络内部署云主机.负载均衡.数据库.Nosql快存储等云服务资源.您可自由划分网段.制定路由策略.私有网络可以配置公网网 ...

  4. Flutter学习笔记(13)--表单组件

    如需转载,请注明出处:Flutter学习笔记(13)--表单组件 表单组件是个包含表单元素的区域,表单元素允许用户输入内容,比如:文本区域,下拉表单,单选框.复选框等,常见的应用场景有:登陆.注册.输 ...

  5. maven的编译规范

    maven的中央仓库上的jar的包名必须小写.否则maven编译不通过. 如:Memcached-Java-Client-3.0.2 的jar包. 目录如下: com.whalin.memcached ...

  6. kylin Retrieving hive dependency...

    由于公司环境配置hive默认连接hiveserver2 ,不管hive cli 还是beeline cli都默认使用beeline cli,连接hive需要输入账号密码; 启动kylin 时会Retr ...

  7. log4net服务启动后没有记录日志

    有时候在用log4net的时候,调试或执行是ok的,但是安装服务后没有记录日志. 这是因为服务启动是在C盘启动,而程序放的位置在别的目录. 这时候需要指定读取配置文件的位置为程序所在的目录 strin ...

  8. java 学习路线、java 入门、java自学、java 教程

    以前学习知识都是用到什么学什么,不是很系统.今天看到一个网站感觉挺不错的,分享给大家. 这个页面是学习路线功能的简介,如下图 ​ 点击选择学习路线 ​ 进入后可以选择循序渐进或者由终至始 ​ 上图标出 ...

  9. 转载 | 一种让超大banner图片不拉伸、全屏宽、居中显示的方法

    现在很多网站的Banner图片都是全屏宽度的,这样的网站看起来显得很大气.这种Banner一般都是做一张很大的图片,然后在不同分辨率下都是显示图片的中间部分.实现方法如下: <html> ...

  10. 基于 kubeadm 部署单控制平面的 k8s 集群

    单控制平面不符合 HA 要求,但用于开发/测试环境不会有任何问题,如果资源足够的话(10台以上服务器,3台用于APIserver.3台用于 etcd 存储.至少3台用于工作节点.1台作为负载均衡),可 ...