[英]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.