[英]How do I set the X-CSRF-Token correctly in an Alexa POST Request to SAP HANA? (403 error)
我对 HTTPS-Post-Request 的 x-csrf-token 验证有疑问。 该请求来自由 Amazon Alexa 技能触发的 Lambda 函数,并被发送到在 SAP HANA 数据库中的 SAP Cloud Platform 上运行的 XSO 数据文件。 我使用 Javascript/Node.js。
请求标头中设置了有效令牌(请参阅下面第一张图片中的代码),但响应标头显示的是 x-csrf-token“必需”(请参阅下面第二张图片中的代码)。 所以验证有错误。 POSTMAN 的相同发布请求工作正常,但是当我通过 JS 文件作为 Lambda 函数(在第一张图片中)尝试它时,会出现 HTTP 状态代码 403 的错误(请参阅下面第二张图片中的代码)。 POST 请求本身有效,但令牌验证无效。 GET 请求工作正常。
有人知道可能的解决方案吗?
非常感谢你!
请先尝试获取 csrf 令牌,然后再将其设置为请求正文。 CSRF 令牌随设备以及时间范围而变化。 我也有类似的问题,在实施上述解决方案后,它开始完美运行。
我写这个作为一个单独的答案,因为我在 Spring Boot RestTemplate 调用中遇到了问题。 看完这篇文章后,我可以得出一个解决方案。 SAP CSRF 问题
基本上,“set-cookie”标头指示浏览器设置“Cookie”标头。 所有需要做的(除了 x-csrf-token)就是用分号替换 cookie 字符串中的逗号。 然后将标题“Cookie”设置为这个替换值;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.