使用API​​提取工作流实例错误400

2020-09-22 22:50发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 上下文: 我想使用API​...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


上下文:

我想使用API​​来获取Workflow-instance,并将状态从运行更改为完成,我这样做的方式是 API集线器。 但是我遇到了错误400,但是我的代码中找不到格式或结构错误。

代码:

 function getWorkflowInstanceId(){
    $ .ajax({
    类型:" GET",
    网址:" https://bpmworkflowruntimewfs-p1943029284trial.hanatrial.ondemand.com/workflow-service/rest/v1/workflow-instances",
    成功:function(data,statusText,xhr){
 var instanceDetails =数据;
 var ID = instanceDetails [0] .id;
 $ .ajax({
 网址:" https://bpmworkflowruntimewfs-p1943029284trial.hanatrial.ondemand.com/workflow-service/rest/v1/xsrf-token",
 方法:" GET",
 标头:{
 " Authorization":"基本<...>",
 " X-CSRF-Token":"获取"
 },
 成功:功能(结果,xhr,数据){
 var令牌= data.getResponseHeader(" X-CSRF-令牌");
 $ .ajax({
 网址:" https://bpmworkflowruntimewfs-p1943029284trial.hanatrial.ondemand.com/workflow-service/rest/v1/task-instances/" + ID,
 方法:" PATCH",
 contentType:" application/json",
 数据:" {\"状态\":\"完成\",\"上下文\":{\" userCreationApproved \":\"" +" true" +" \"}}",
 标头:{
 " X-CSRF-Token":令牌
 },
 成功:function(){
 alert("您的批准已提交!");
 },
 错误:功能(错误){
 alert(error.statusText);
 }
 });
 },
 });
    },
    错误:function(errMsg){
 alert("不起作用" + errMsg);
    },
    contentType:" application/json"
    });
 }

 

在调试器中,我可以毫无错误地获取X-CSRF-Token和ID(workflow-instanceId)。

错误消息:

我在请求内容中找不到结构错误的格式。

所以任何建议对我都会很有帮助。

最诚挚的问候,

Joy Lee

(84.5 kB)
5条回答
哎,真难
2020-09-22 23:10 .采纳回答

嗨,

您的示例有点混乱,因为在您描述的文本中您要更改工作流实例状态。 但是,在代码中,您首先要阅读工作流实例,但要更新任务实例。

尽管如此,错误请求(400)响应源自您实际上正在传递数组的事实。 任务实例PATCH api仅期望一个简单对象。

最诚挚的问候,

Stefan Henke

一周热门 更多>