PLM 文档下载接口说明原创
金蝶云社区-Thilifala
Thilifala
16人赞赏了该文章 6877次浏览 未经作者许可,禁止转载编辑于2022年11月07日 09:22:10
  • 下载文档

接口简介

获取星空 PLM的电子仓(物理文档服务器)文档流,支持从指定文档位置下载指定长度的文档流

接口详情

请求地址

http://{物理文档服务器地址}/Download

如 http://localhost/CloudPLMWarehouse/Download

 

请求类型

POST

请求头

参数

是否必须

编码

说明

FileID

Y

base64

下载的文档ID

FileHash

N

base64

当前文档hash值,用来校验电子仓文档的hash值是否跟当前hash值一致,不一致返回错误信息。为空时不作校验

Offset

N

base64

偏移值,即文件中的位置,将从该位置开始将内容写入到 HTTP 输出中。为空时即从头开始。

TotalLength

N

base64

要传输的字节数,为空则默认为 文档总长度-偏移值

CTX

Y

base64

FTP上下文,格式:LoginUrl=http://{星空站点URL}/&UserToken=

token

Y


电子仓的访问凭证,下面详细说明获取方法

PLM_ACCESS_TYPE

N


值为“pure”时获取不压缩的文档,否则默认获取压缩的文档的流

 

返回参数说明

正常:返回指定文档流

异常:返回错误信息,格式为 “[Base64]{base64编码的内容}[/Base64]”

 

  • 获取文档hash值

接口简介

获取电子仓文档的hash值

接口详情

请求地址

http://{物理文档服务器地址}/ GetHash ,

如http://localhost/CloudPLMWarehouse/ GetHash

 

请求类型

POST

请求头(参数值统一使用base64编码)

参数

是否必须

编码

说明

FileID

Y

base64

请求下载的文档ID

CTX

Y

base64

FTP上下文,格式:LoginUrl=http://K3Cloud站点/&UserToken=

token

Y


电子仓的访问凭证

 

返回参数说明

正常:返回文档hash值,不支持hash的文档返回-1

异常:返回错误信息,格式为 “[Base64]{base64编码的内容}[/Base64]”

 

 

  • 获取文档长度

接口简介

获取电子仓的文件长度

接口详情

请求地址

http://{物理文档服务器地址}/ GetLength  ,

如http://localhost/CloudPLMWarehouse/ GetLength

 

请求类型

POST

 

请求头(参数值统一使用base64编码)

参数

是否必须

编码

说明

FileID

Y

base64

请求下载的文档ID

CTX

Y

base64

FTP上下文,格式:LoginUrl=http://K3Cloud站点/&UserToken=

token

Y


电子仓的访问凭证

 

返回参数说明

正常:返回文档hash值,不支持hash的文档返回-1

异常:返回错误信息,格式为 “[Base64]{base64编码的内容}[/Base64]”

 

  • 获取电子仓访问凭证

说明

使用http访问plm电子仓时需要访问凭证token,该凭证可以通过服务端注册一个电子仓访问凭证而获取。

 

服务端获取方式

通过使用反射或引用dll调用以下方法获取,为了不依赖该dll,建议使用反射。

DLL:

Kingdee.K3.PLM.Common.Core.dll

类:

AccessorTokenCenter

方法:

GetRegisterToken

参数:

userId,用户ID

accessType,访问类型,暂时用不上,写死”1000”


  • DEMO(仅供参考)

1.请求前的参数准备

image.png

2.获取响应对象

image.png

3.响应结果处理

图片.png


  • 注意

1、上文中获取 UserToken 的方式仅供参考,方式不限,如果不通请自行查阅论坛其他相关文档等

如,云星空 web api 登录接口:https://vip.kingdee.com/article/821

2、调用失败,返回500错误,可以在HttpResponse找具体的错误信息

异常信息格式: “[Base64]{base64编码的内容}[/Base64]”(在 HttpResponse.StatusDescription 中)


赞 16