2012-10-17 87 views
4

我正在尝试使用Play 2.xbackbone.js作为项目。我的意图是在服务器端创建RESTful API(所有响应主体都使用JSON,所有请求主体也使用JSON)。保护Play的REST API

我想使用Facebook OAuth(服务器端)来验证我的请求。为此,我为OAuth使用了play-authorize。我遇到的问题是用户会话信息存储在播放中的会话对象中。我真的不想在我的HTML代码中使用播放模板,如何在没有播放模板的情况下使用客户端的会话对象。

在使用Play时,我还可以使用哪些措施来防止CSRF/XSS攻击。

回答

0

也许我误解了你的问题,但请注意,Play是无状态的。这意味着“会话”存储在发送到服务器的cookie中。您可以将字符串值存储到该cookie并从浏览器访问它们。

现在,您不希望将关键值存储在那里,但是服务器端代码可以识别并且可以帮助您解决问题。

+0

其实我有相关的问题http://stackoverflow.com/questions/12964102/access-playframework-session-in-javascript关于无法访问客户端的播放会话。我也明白,该cookie是加密的,因此我无法阅读。我想在此页面上的HTTP请求中传递cookie,但无法访问它。这会有所帮助。 – rOrlig

+0

Cookie值是使用密钥签名的,因此客户端无法修改cookie数据(否则它将失效)。我不认为他们是加密的。这意味着你应该能够获得价值(授予,从未尝试过) –