微焦点内容管理器CMServiceAPI POST错误

问题描述 投票:0回答:1

我正在使用 CMServiceAPI 在开发环境中测试 Micro focus Content Manager 23.4,所有 GET 函数都工作正常,但是所有 POST 函数都会出现 403 错误:无法反序列化请求。

例如。删除一条记录:

curl -X POST --header '内容类型:application/x-www-form-urlencoded' --header '接受:application/json' -d 'DeleteRecordDeleteContents=true' 'http://servername/CMServiceAPI/Record /1/删除'

检查服务器日志,看到以下错误: 2024-02-20 18:19:07,861 [40] 错误 HP.HPTRIM.Service.TrimAppHost - 所需的防伪 cookie“__RequestVerificationToken_L0NNU2VydmljZUFQSQ2”不存在。 ServiceStack.HttpError:所需的防伪 cookie“__RequestVerificationToken_L0NNU2VydmljZUFQSQ2”不存在。 在 HP.HPTRIM.Service.ValidateHttpAntiForgeryToken.Execute(IRequest req,IResponse res,对象 requestDto) 在 HP.HPTRIM.Service.ValidateHttpAntiForgeryToken.RequestFilter(IRequest req,IResponse res,对象 requestDto) 在 /home/runner/work/ServiceStack/ServiceStack/ServiceStack/src/ServiceStack/ServiceStackHost.Runtime.cs 中的 ServiceStack.ServiceStackHost.d__435.MoveNext() 处:第 230 行 --- 从先前抛出异常的位置开始的堆栈跟踪结束 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在 /home/runner/work/ServiceStack/ServiceStack/ServiceStack/src/ServiceStack/ServiceStackHost.Runtime.cs 中的 ServiceStack.ServiceStackHost.d__434.MoveNext() 处:第 144 行 --- 从先前抛出异常的位置开始的堆栈跟踪结束 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在 /home/runner/work/ServiceStack/ServiceStack/ServiceStack/src/ServiceStack/Host/RestHandler.cs 中的 ServiceStack.Host.RestHandler.d__14.MoveNext() 处:第 93 行

顺便说一句,创建记录、删除记录在内容管理器 GUI 中工作正常。

我错过了 CMServiceAPI 配置中的任何内容吗?

任何建议真的很感激。

trim
1个回答
0
投票

错误是您的 CURL 请求中不存在防伪造令牌,而它们会在您的 UI 中发送。

© www.soinside.com 2019 - 2024. All rights reserved.