WebAPI附件上传下载接口
调用文件服务接口的附件上传方式(https://vip.kingdee.com/article/183394)主要存在两个问题: 1.UserToken是通过Url参数携带的,同WebAPI增删查改等接口不一致; 2.单据上传附件需要分两个步骤调用,过程略显麻烦。 新的WebAPI附件上传下载接口,简化附件上传步骤,同时验权逻辑同其他WebAPI接口保持一致。 注意:WebAPI新的附件上传下载接口是针对文件服务器和云存储的,不支持数据库附件存储方式。
发布版本:V8.0
上线日期:2022-03-31
补丁号:PT-146906
新特性介绍
- 简化通过WebAPI接口方式单据附件上传步骤
操作指引
1根据接口说明调用
特性效果展示
星空webapi附件上传/下载接口说明
1、上传附件接口(上传附件并绑定单据):
http://[IP]/K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.AttachmentUpLoad.common.kdsvc
参数说明:
注意:
1. 如果是单据头附件,EntryinterId要么不填,要么填-1。
2. 大的附件(如大于4M),一定要分块儿上传。分块儿上传方式为将读取到的附件字节流拆分成多个块,分别转Base64以后,按顺序分别调用上传接口。 第一次调用时候成功时候会返回调用成功的FileID,后续分块调用时候请求消息里需要携带这个FileID以标识多次调用为同一个文件。 分块上传非最后一个分块调用接口时候需要将IsLast参数设置为fasle,最后一个分块上传时候需要将IsLast参数设置为true。
可以参考下面教程里面的分块上传示例:https://vip.kingdee.com/article/382560130220759040
Postman请求示例:
单据头附件
{ "data": { "FileName": "0616.txt", "FormId": "PUR_PurchaseOrder", "IsLast": true, "InterId": "100723", "BillNO": "CGDD000198", "AliasFileName": "test", "SendByte": "文件字节数组转base64后的字符串" } }
单据体附件
{ "data": { "FileName": "0616.txt", "FormId": "PUR_PurchaseOrder", "IsLast": true, "InterId": "100723", "Entrykey": "FPOOrderEntry", "EntryinterId": "101300", "BillNO": "CGDD000198", "AliasFileName": "test", "SendByte": "77u/MTIzNA==" } }
使用Kingdee.BOS.WebApi.Client.dll的话,数据包格式不需要携带data那一层,按下面格式传值即可
{ "FileName": "0616.txt", "FormId": "PUR_PurchaseOrder", "IsLast": true, "InterId": "100723", "BillNO": "CGDD000198", "AliasFileName": "test", "SendByte": "文件字节数组转base64后的字符串" }
使用Kingdee.BOS.WebApi.Client.dl示例
返回参数说明:
返回示例:
{ "Result": { "ResponseStatus": { "IsSuccess": true, "Errors": [], "SuccessEntitys": [ { "Id": 470257, "Number": null, "DIndex": 0 } ], "SuccessMessages": [], "MsgCode": 0 }, "FileId": "23d8a447a9254a788f2d12a499898755", "Message": "" } }
2、下载附件接口: http://[IP]/K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.AttachmentDownLoad.common.kdsvc
参数说明:
请求示例:
{ "data": { "FileId": "b671ad15ef884994813e0fc6e0f0f79e", "StartIndex": 0 } }
返回参数说明:
返回示例:
{ "Result": { "ResponseStatus": { "IsSuccess": true, "Errors": [], "SuccessEntitys": [], "SuccessMessages": [], "MsgCode": 0 }, "StartIndex": 4194304, "IsLast": true, "FileSize": 6378, "FileName": "1104.txt", "FilePart": "文件字节数组转base64后的字符串", "Message": "" } }
3、上传文件接口(不绑定单据): http://[IP]/K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.UploadFile.common.kdsvc
参数说明:
请求示例:
{ "data": { "FileName": "test.txt", "IsLast": true, "SendByte": "文件字节数组转base64后的字符串" } }
返回参数说明:
返回示例:
{ "Result": { "ResponseStatus": { "IsSuccess": true, "Errors": [], "SuccessEntitys": [], "SuccessMessages": [], "MsgCode": 0 }, "FileId": "8941112c242942e5b18f7e38839530fa", "Message": "" } }
4、附件绑定单据: http://[IP]/K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc
参数说明:
请求示例:
{ "FormId": "BOS_Attachment", "data": { "Model": { "FFileId": "4a072355a22342d5ae3c569a12d51734", "FAttachmentName": "test123.txt", "FBillType": "PUR_PurchaseOrder", "FInterID": "101827", "FBillNo": "CGDD000949-2003", "FAttachmentSize": 64.66, "FExtName": ".txt", "FEntryinterId": "-1", "FEntrykey": " ", "FaliasFileName": "别名", "FCreateMen": { "FUserID": "100008" }, "FCreateTime": "2021-12-30 15:15:20" } } }
返回参数说明:
返回示例:
{ "Result": { "ResponseStatus": { "IsSuccess": true, "Errors": [], "SuccessEntitys": [ { "Id": 207179, "Number": null, "DIndex": 0 } ], "SuccessMessages": [], "MsgCode": 0 }, "Id": 207179, "Number": "", "NeedReturnData": [ {} ]
WebAPI附件上传下载接口
本文2024-09-23 03:43:40发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-160715.html
- 鼎捷EAI整合規範文件V3.1.07 (集團).pdf
- 鼎捷OpenAPI應用場景說明_基礎資料.pdf
- 鼎捷OpenAPI應用場景說明_財務管理.pdf
- 鼎捷T100 API設計器使用手冊T100 APIDesigner(V1.0).docx
- 鼎新e-GoB2雲端ERP B2 線上課程E6-2應付票據整批郵寄 領取.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A4使用者建立權限設定.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程C3會計開帳與會計傳票.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程E6-1應付票據.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A5-1進銷存參數設定(初階篇).pdf
- 鼎新e-GoB2雲端ERP B2 線上課程D2帳款開帳與票據開帳.pdf