在absl代码中对c4c自定义对象使用post方法时,csrf令牌验证失败

2020-09-03 09:59发布

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

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


专家,

我正在使用post方法在c4c自定义对象中创建一条记录,但是它抛出了csrf令牌验证失败错误403。 正如其他博客所建议的那样,我使用了get方法并检索了csrf令牌和其他参数,但无法创建记录。

任何人都可以帮助我解决这个问题吗?

谢谢。

此致

Abhishek

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

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


专家,

我正在使用post方法在c4c自定义对象中创建一条记录,但是它抛出了csrf令牌验证失败错误403。 正如其他博客所建议的那样,我使用了get方法并检索了csrf令牌和其他参数,但无法创建记录。

任何人都可以帮助我解决这个问题吗?

谢谢。

此致

Abhishek

付费偷看设置
发送
5条回答
小c菟菟
1楼-- · 2020-09-03 10:30

您好 Abhishek Raj

在ABSL代码中,您可以在1908年发行后使用CSRF令牌和会话管理。 您必须等待1908年的SAP正式发行说明,才能获得更多有关此信息。

此致

Vignesh

hengyuye
2楼-- · 2020-09-03 10:32

Vignesh Dharmaraj,谢谢您的回答,这是正确的。
Ambuja Prabhudessai,您只需要在执行POST时传递GET响应中的cookie:

闻人可可
3楼-- · 2020-09-03 10:40

嗨,

尝试使用C4C odata REST服务发布数据时,我也遇到相同的错误。

此致

Ambuja

愤怒的猪头君
4楼-- · 2020-09-03 10:27

嗨Vignesh,

感谢您的回复。

我尝试实现相同的功能(从get方法中获取cookie和csrf令牌值并将其设置为post方法),但是没有用。

它可以使用邮递员工具工作,但是当我尝试使用ABSL代码来实现它时却无法工作。

您是否尝试过将任何数据发布到C4C的odata服务?

如果有任何发现,请告诉我...

此致

Abhishek

SKY徐
5楼-- · 2020-09-03 10:28

嗨Abhishek,

即使您正在通过GET方法从GET请求中获取CSRF令牌,C4C也会理解此GET和POST HTTPS请求来自不同的客户端会话,因此当您通过自定义实现时,CSRF令牌验证可能会失败 代码。

HTTP基本上是一种无状态协议,要保持2个HTTP请求之间的状态,可以使用cookie方法。

在GET请求中返回的服务器cookie(如所附图像所示)可用于维护后续POST请求中的状态,这样就可以避免CSRF验证失败。

此致

Vignesh

一周热门 更多>