zoukankan      html  css  js  c++  java
  • C#开发BIMFACE系列9 服务端API之获取应用支持的文件类型

    BIMFACE最核心能力之一是工程文件格式转换。无需安装插件,支持数十种工程文件格式在云端转换,完整保留原始文件信息。开发者将告别原始文件解析烦恼,数据抽取全部自动完成。BIMFACE目前能够解析38种常见工程图纸和模型,具体包括:rvt、rfa、rte、skp、nwd、nwc、ifc、dwg、dxf、3dm、stl、dgn、stp、3ds、obj、dae、ply、fbx、dwf、gmp、gtj、gbq、gcl、ggj、gqi、gdq、gjg、igms、gpb、gpv、gsc、gbg、gsh、gtb、gzb。

    下面详细介绍如何获取应用支持的文件类型。

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

    说明:获取当前应用支持转换的文件类型,如上传的文件格式不在列表里,BIMFACE不支持对其发起转换。

    参数:

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

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

    HTTP响应示例(200):

    {
      "code" : "success",
      "data" : {
        "length" : 1073741824,
        "types" : [ "rvt", "rfa", "dwg", "dxf", "skp", "ifc", "dgn", "obj", "stl", "3ds", "dae", "ply", "igms", "zip", "gtj", "bfcatzip" ]
      },
      "message" : ""
    }

    C#实现方法:

     1 /// <summary>
     2 ///  获取应用支持的文件类型
     3 /// </summary>
     4 /// <param name="accessToken">令牌</param>
     5 public virtual FileSupportResponse GetFileSupport(string accessToken)
     6 {
     7     //GET https://file.bimface.com/support
     8     string url = BimfaceConstants.FILE_HOST + "/support";
     9     BimFaceHttpHeaders headers = new BimFaceHttpHeaders();
    10     headers.AddOAuth2Header(accessToken);
    11 
    12     try
    13     {
    14         FileSupportResponse response;
    15 
    16         HttpManager httpManager = new HttpManager(headers);
    17         HttpResult httpResult = httpManager.Get(url);
    18         if (httpResult.Status == HttpResult.STATUS_SUCCESS)
    19         {
    20             response = httpResult.Text.DeserializeJsonToObject<FileSupportResponse>();
    21         }
    22         else
    23         {
    24             response = new FileSupportResponse
    25             {
    26                 Message = httpResult.RefText
    27             };
    28         }
    29 
    30         return response;
    31     }
    32     catch (Exception ex)
    33     {
    34         throw new Exception("[获取应用支持的文件类型]发生异常!", ex);
    35     }
    36 }
    其中引用的 httpManager.Get() 方法,请参考《C#开发BIMFACE系列6 服务端API之获取文件信息》,方法完全一样。
    测试

    可以看到获取应用支撑的文件类型成功,返回了以下信息:数据长度、支持的类型。

    但是此处只返回了以下17种: rvt、rfa、dwg、dxf、skp、ifc、dgn、obj、stl、3ds、dae、ply、imgs、zip、fbx、dwf、nwd 格式。与官网介绍的38种相差很多,原因是我注册的账号只是一个开发者测试账号。所以默认只提供了17种。如果需要其他的格式,需要联系管理员增加其他的格式。

    测试程序如下:

    // 获取应用支持的文件类型
    protected void btnGetFileSupport_Click(object sender, EventArgs e)
    {
        txtFileInfo.Text = string.Empty;
    
        string token = txtAccessToken.Text;
    
        FileApi api = new FileApi();
        FileSupportResponse response = api.GetFileSupport(token);
    
        txtFileInfo.Text = response.Code
                         + Environment.NewLine
                         + response.Message
                         + Environment.NewLine
                         + response.Data.ToString();
    }
  • 相关阅读:
    linux的openfire运行日志配置经历
    基于Html5的兼容所有主流浏览器的在线视频播放器videoJs
    Eclipse下使用Fat Jar插件对源代码进行打包
    ubuntu下的openfire安装、配置、运行
    linux系统时间同步更新
    PRD产品需求文档概要
    oracle实现自动记录存储过程、自定义函数执行错误
    Oracler读取各种格式的相关日期格式
    linux中shell变量$#,$@,$0,$1,$2的含义解释
    Linux的五个查找命令
  • 原文地址:https://www.cnblogs.com/SavionZhang/p/11433982.html
Copyright © 2011-2022 走看看