如何让playframework允许非原始调用?我已经尝试将@Before方法添加到控制器,但是永远不会被ajax客户端调用。
@Before
public static void setCORS()
{
Http.Response.current().accessControl("*", "GET,PUT,POST,DELETE", true);
}
我正在尝试为客户端开发人员设置测试API服务器以进行测试,但这似乎需要禁用Origin限制。
还有其他人有这个工作吗?或以不同的方式完成这个?
更新 我在这个主题上找到了这篇文章 http://javathought.wordpress.com/2011/12/04/cross-origin-resource-sharing-with-play-framework/
答案 0 :(得分:2)
检查您的浏览器尝试做什么,它可能首先发送OPTION请求以检查允许的内容,这称为“预检请求”。
此外,将Access-Control-Allow-Origin设置为*仅在没有凭据的情况下工作。
答案 1 :(得分:0)
使用自定义路由器可以解决此问题。
例如使用:https://github.com/teamon/play-navigator
val rget = GET on "foo" to App.foo
val gpost = POST on "foo" to App.foo