有没有办法限制对Parse CloudCode应用程序中给定网址/路由的访问?
app.get( '/', function ( req, res )
{
res.render('home');
} );
// only allow access to this 'route' if the user making the request is an admin
app.get('/admin', function(req, res)
{
var user = Parse.User.current();
// user is always null. No way to check their user privileges.
res.render('admin');
});
我看到的问题是,无法访问Parse.User.current()或在main.js文件中请求用户。从客户端创建并访问“isAdmin”CloudCode功能似乎是阻止未经授权的用户访问网址的错误方法。
提前致谢。
答案 0 :(得分:0)
由于我的低点,我无法对你的帖子发表评论。但你试过这个文档吗?
您必须为其快速云使用解析中间件:parseExpressCookieSession
和parseExpressHttpsRedirect
。然后,您可以使用云代码中的Parse.User.current()
轻松访问用户数据。
您可以在Parse SDK参考#parseExpressCookieSession
上看到示例代码您可以将Parse.User身份验证和会话管理添加到您的 使用parseExpressCookieSession中间件的Express应用程序。你刚才 需要在Cloud Code中调用Parse.User.logIn()和这个中间件 将自动为您管理用户会话。
您可以使用网络表单询问用户的登录凭据,以及 从此表单接收数据时,请在Cloud Code中登录用户。 调用Parse.User.logIn()后,此中间件将自动执行 在用户的浏览器中设置cookie。在后续HTTP请求期间 从同一个浏览器,这个中间件将使用此cookie 自动在Cloud Code中设置当前用户。这将产生ACL 在Cloud Code中正常工作,并允许您检索整个 当前用户对象,如果需要。 ...