我们正在使用 jQuery 对 sling servlet 使用 POST AJAX 调用,并且仅当用户登录时,由于缺少 CSRF token ,这些调用才会出现 403 禁止错误。对于匿名访问,它工作正常。 我们如何在 AJAX 调用中包含此 CSRF header ? 在调度程序中,我们是否需要允许“/libs/granite/csrf/token.json”?
最佳答案
是的,您需要在调度程序 ( Refer dispatcher documentation ) 中允许 /libs/granite/csrf/token.json
以及 CSRF-Token
header 。
对于 CSRF token ,如果您依赖于 granite.jquery
clientlib,那么默认情况下它应该可用。否则,您需要在客户端库中添加granite.csrf.standalone
依赖项以启用CSRF框架。有关此内容的更多信息,请参阅 here .
关于aem - 在 AJAX Post 调用中包含 CSRF token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40989517/