Postman测试金蝶云星空Webapi【协同开发云】

打印 上一主题 下一主题

主题 507|帖子 507|积分 1521

Postman测试金蝶云星空Webapi【协同开发云】

环境说明

金蝶协同开发云环境
工作目录空间:D:\WorkSpace\开发商码
协同账套映射到本机的1200端口
  1. //本机K3网址
  2. http://localhost:1200/k3cloud
复制代码
业务配景

基于金蝶云星空提供的接口测试,交付之前或者联调之前开发者先自测,纵然纠错,进步效率。
大抵流程

先请求登录接口,获得token后再请求标准webapi或者自界说接口,这样上下文才不会空。
具体操作

请求范例: POST
地址格式:http://localhost:1200/k3cloud/对应的方法拼接结构体
请求登录接口

请求地址
  1. http://localhost:1200/Kingdee.bos.webapi.ServicesStub.authservice.validateuser.common.kdsvc
复制代码
请求json:
  1. {
  2.     "acctid":"账套id",
  3.     "userName":"账号",
  4.     "password":"密码",
  5.     "lcid":2052
  6. }
复制代码
accid:账套ID
userName:用户名
password:密码
lcid:语言【2052代表中文】
请求头:


返回以上信息代表登录成功。
请求标准接口

查察

请求方式:POST
请求地址:
  1. http://localhost:1200/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc
复制代码
请求体构建json:
  1. {
  2.     "formid":"XXXX_AS_ProductLibrary",
  3.     "data":{
  4.     "CreateOrgId": 0,
  5.     "Number": "ZDY00000009HDC",
  6.     "IsSortBySeq": "false"
  7.     }
  8. }
复制代码

相应结果:

生存

请求方式:POST
请求地址:
  1. http://localhost:1200/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc
复制代码
请求体构建json:
  1. {
  2.     "formid":"XXXX_AS_ProductLibrary",
  3.     "data":{
  4.     "NeedUpDateFields": [],
  5.     "NeedReturnFields": [],
  6.     "IsDeleteEntry": "true",
  7.     "SubSystemId": "",
  8.     "IsVerifyBaseDataField": "false",
  9.     "IsEntryBatchFill": "true",
  10.     "ValidateFlag": "true",
  11.     "NumberSearch": "true",
  12.     "IsAutoAdjustField": "false",
  13.     "InterationFlags": "",
  14.     "IgnoreInterationFlag": "",
  15.     "IsControlPrecision": "false",
  16.     "ValidateRepeatJson": "false",
  17.     "Model": {
  18.         "FID": 0,
  19.         "FNumber": "XLH20231031001",
  20.         "FCreateOrgId": {
  21.             "FNumber": "10"
  22.         },
  23.         "FUseOrgId": {
  24.             "FNumber": "10"
  25.         },
  26.         "FName": "序列号001",
  27.         "FCustId": {
  28.             "FNUMBER": "CUST0001"
  29.         },
  30.         "FOrderNum": "SO2023001",
  31.         "FOrderInt": 2,
  32.         "FMaterialId": {
  33.             "FNUMBER": "010101076"
  34.         },
  35.         "FQty": 1,
  36.         "FProductionDate": "2023-10-17 00:00:00",
  37.         "FExpirationDate": "2023-12-16 00:00:00",
  38.         "FOutStockDate": "2023-10-31 11:13:25",
  39.         "FOutStockrNum": "XSCK001",
  40.         "FRemark": "测试备注",
  41.         "FDefinerOute": "test",
  42.         "FDeliveryNoticeNo": "D20231031001"
  43.     }
  44. }
  45. }
复制代码


相应结果:
  1. {
  2.     "Result": {
  3.         "ResponseStatus": {
  4.             "IsSuccess": true,
  5.             "Errors": [],
  6.             "SuccessEntitys": [
  7.                 {
  8.                     "Id": 106428,
  9.                     "Number": "XLH20231031001",
  10.                     "DIndex": 0
  11.                 }
  12.             ],
  13.             "SuccessMessages": [],
  14.             "MsgCode": 0
  15.         },
  16.         "Id": 106428,
  17.         "Number": "XLH20231031001",
  18.         "NeedReturnData": [
  19.             {}
  20.         ]
  21.     }
  22. }
复制代码
提交

请求方式:POST
请求地址:
  1. http://localhost:1200/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc
复制代码
请求体:
  1. {
  2.      "formid":"XXXX_AS_ProductLibrary",
  3.      "data":{
  4.         "CreateOrgId": 0,
  5.         "Numbers": ["XLH20231031001","XLH20231031002"],
  6.         "Ids": "",
  7.         "SelectedPostId": 0,
  8.         "NetworkCtrl": "",
  9.         "IgnoreInterationFlag": ""
  10.     }
  11. }
复制代码

相应结果
  1. {
  2.     "Result": {
  3.         "ResponseStatus": {
  4.             "IsSuccess": true,
  5.             "Errors": [],
  6.             "SuccessEntitys": [
  7.                 {
  8.                     "Id": 106427,
  9.                     "Number": "XLH20231031001",
  10.                     "DIndex": 0
  11.                 },
  12.                 {
  13.                     "Id": 106428,
  14.                     "Number": "XLH20231031002",
  15.                     "DIndex": 1
  16.                 }
  17.             ],
  18.             "SuccessMessages": [],
  19.             "MsgCode": 0
  20.         }
  21.     }
  22. }
复制代码

考核

请求方式:POST
请求地址:
  1. http://localhost:1200/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc
复制代码
请求体:
  1. {
  2.      "formid":"XXXX_AS_ProductLibrary",
  3.      "data":{
  4.         "CreateOrgId": 0,
  5.         "Numbers": ["XLH20231031001","XLH20231031002"],
  6.         "Ids": "",
  7.         "SelectedPostId": 0,
  8.         "NetworkCtrl": "",
  9.         "IgnoreInterationFlag": ""
  10.     }
  11. }
复制代码

相应结果
  1. {
  2.     "Result": {
  3.         "ResponseStatus": {
  4.             "IsSuccess": true,
  5.             "Errors": [],
  6.             "SuccessEntitys": [
  7.                 {
  8.                     "Id": 106427,
  9.                     "Number": "XLH20231031001",
  10.                     "DIndex": 0
  11.                 },
  12.                 {
  13.                     "Id": 106428,
  14.                     "Number": "XLH20231031002",
  15.                     "DIndex": 1
  16.                 }
  17.             ],
  18.             "SuccessMessages": [],
  19.             "MsgCode": 0
  20.         }
  21.     }
  22. }
复制代码

反考核

请求方式:POST
请求地址:
  1. http://localhost:1200/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.UnAudit.common.kdsvc
复制代码
请求体:
  1. {
  2.      "formid":"XXXX_AS_ProductLibrary",
  3.      "data":{
  4.         "CreateOrgId": 0,
  5.         "Numbers": ["XLH20231031001","XLH20231031002"],
  6.         "Ids": "",
  7.         "SelectedPostId": 0,
  8.         "NetworkCtrl": "",
  9.         "IgnoreInterationFlag": ""
  10.     }
  11. }
复制代码

相应结果
  1. {
  2.     "Result": {
  3.         "ResponseStatus": {
  4.             "IsSuccess": true,
  5.             "Errors": [],
  6.             "SuccessEntitys": [
  7.                 {
  8.                     "Id": 106427,
  9.                     "Number": "XLH20231031001",
  10.                     "DIndex": 0
  11.                 },
  12.                 {
  13.                     "Id": 106428,
  14.                     "Number": "XLH20231031002",
  15.                     "DIndex": 1
  16.                 }
  17.             ],
  18.             "SuccessMessages": [],
  19.             "MsgCode": 0
  20.         }
  21.     }
  22. }
复制代码

撤销

请求方式:POST
请求地址:
  1. http://localhost:1200/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.CancelAssign.common.kdsvc
复制代码
请求体和相应体都和提交、考核、反考核一致。
请求自界说接口

参数是字符串

请求方式:POST
请求地址:
  1. http://localhost:1200/XXXX.K3.SCM.WebApi.ServicesStub.AfterOrder.GetAfterOrder.common.kdsvc
复制代码
请求体构建json:
  1. {
  2.     "customer":"XXXX电气有限公司"
  3. }
复制代码

相应结果

参数是实体类

单个实体类

请求方式:POST
请求地址:
  1. http://localhost:1200/XXXX.K3.SCM.WebApi.ServicesStub.AfterOrder.GetAfterOrders.common.kdsvc
复制代码
请求体构建json:
  1. {
  2.     "ai":
  3.         {
  4.         "Cust":"ZZZZ电气有限公司",
  5.         "Number":"",
  6.         "Name":"蝴蝶床"
  7.     }
  8. }
复制代码

相应结果:

实体类是集合

请求方式:POST
请求地址:
  1. http://localhost:1200/XXXX.K3.SCM.WebApi.ServicesStub.AfterOrder.GetAfterOrderList.common.kdsvc
复制代码
请求体构建json:
  1. {
  2.     "aiList":
  3.         [{
  4.         "Cust":"XXXX电气有限公司",
  5.         "Number":"",
  6.         "Name":"蝴蝶床"
  7.     },{
  8.         "Cust":"ZZZZ电气有限公司",
  9.         "Number":"",
  10.         "Name":"床"
  11.     }]
  12. }
复制代码

相应结果

其他

请求范例是POST如果改成GET请求,会报错
报错截图

相应结果:
  1. {
  2.     "actionname": "ShowErrMsg",
  3.     "params": [
  4.         {
  5.             "errorTitle": "金蝶温馨提示: 应用服务器发生错误,请联系系统管理员检修!",
  6.             "errorInfo": "发生时间:\t2023-10-31 09:54:53\r\n错误编号:\t500\r\n错误信息:\t索引超出范围。必须为非负值并小于集合大小。\r\n参数名: index\r\n===================================================\r\n调用堆栈:\r\n   在 System.Collections.ArrayList.get_Item(Int32 index)\r\n   在 System.Collections.Specialized.NameValueCollection.GetKey(Int32 index)\r\n   在 System.Web.HttpValueCollection.Get(Int32 index)\r\n   在 Kingdee.BOS.ServiceFacade.KDServiceFx.JQueryRequestExtractor.GetByGet(HttpRequest request) 位置 d:\\k3cloudbuild\\BOS_V7_PT\\BOS\\ServiceFacade\\Src\\Kingdee.BOS.ServiceFacade.KDServiceFx\\Pipeline\\JQueryRequestExtractor.cs:行号 35\r\n   在 Kingdee.BOS.ServiceFacade.KDServiceFx.RequestExtractor.Create(HttpRequest request) 位置 d:\\k3cloudbuild\\BOS_V7_PT\\BOS\\ServiceFacade\\Src\\Kingdee.BOS.ServiceFacade.KDServiceFx\\Pipeline\\RequestExtractor.cs:行号 50\r\n   在 Kingdee.BOS.ServiceFacade.KDServiceFx.KDSVCHandler.ProcessRequest(HttpContext context) 位置 d:\\k3cloudbuild\\BOS_V7_PT\\BOS\\ServiceFacade\\Src\\Kingdee.BOS.ServiceFacade.KDServiceFx\\HttpHandlers\\KDSVCHandler.cs:行号 20\r\n   在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()\r\n   在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)\r\n   在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)\r\n\r\n"
  7.         }
  8.     ]
  9. }
复制代码
因此请求范例不可以混用,要对,根本就是POST请求。
POST请求和WebAPI之间的区别是:

  • POST请求是HTTP协议的一种请求方式,用于向服务器提交数据,通常用于表单提交数据;而WebAPI是一种服务,提供了一组RESTful接口,用于向服务器请求数据。
  • POST请求是一种客户端向服务器发送数据的方式,通常用于表单提交等场景;而WebAPI则是一种服务器端提供数据的方式,客户端可以通过接口从服务器获取数据。
  • POST请求必要指定请求的URL和提交的数据,服务器可以根据请求的URL来处理数据;而WebAPI则必要客户端通过URL和参数指定要请求的数据,服务器在接收到请求后返回所需的数据。
总之,POST请求和WebAPI服务是两种不同的概念,POST请求用于提交数据,而WebAPI用于提供数据服务。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

雁过留声

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表