如何在Play框架2(Java)中有选择地禁用CSRF检查

5
在Play框架中,我们可以应用全局CSRF检查。
@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
public <T extends EssentialFilter> Class<T>[] filters() {
    Class[] filters = { CSRFFilter.class };

    return filters;
}

在大多数情况下这是可以的。但我想设置一个指向我们网站的Facebook画布页面。问题是Facebook会向我们的站点发送POST请求,而这会被CSRF检查所阻止。它总是返回"Invalid CSRF Token"

因此,我想在某些操作中有选择地禁用CSRF检查,比如www.ourwebsite.com/canvas

这可行吗?

1个回答

6

你有这个答案的Java版本吗? - plade
即在 Java 中编写 Global 而不是 Scala。 - plade
为什么需要在Java中使用它?正如博客文章中所述,您也可以从Java控制器中使用此功能。 - Dominik Dorn
我猜我不是必须要它,但我的Global已经用Java编写了,我不知道如何在Scala中重写它(或者至少需要很长时间,因为我不太熟悉Scala)。 - plade

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接