我很好奇是否可以将sailsJS应用程序与View Layer完全分开。这就是不管理模板,视图,客户端JS和资产的方式,以及在我的情况下只是作为RESTful API的方式。我想尝试部署两个单独的存储库,这些存储库不需要知道另一个存储库如何通过请求相互交互。
我知道sails new <apiName> --no-frontend
选项,但我还希望在我的表单中加入CSRF令牌,但不会在建议的ejs
方法中使用<input type='hidden' name='_csrf' value='<%= _csrf %>'>
。
我的案例是否有可能并建议公开一个严格处理我的sailsJS服务器上授予和验证csrf令牌的端点?
答案 0 :(得分:3)
你可以废弃与前端有关的所有内容(--no-frontend
是一个好的开始)。如果您没有生成前端,csrf
挂钩和GET /csrfToken
仍然存在,但只要您_csrf
POST
,风帆就会需要PUT
参数1}}等等,如果启用了CSRF挂钩。
在您的风帆应用中,无论何时处理路线,您都不必返回res.view()
或res.render()
;你可以返回res.json()
或其他任何类似的东西。
例如,我们使用gulp来单独管理我们的资产;这样sails只处理API请求,而不是静态文件或渲染。