javascript - 使用 CSRF 的 SailsJS View 层分离

标签 javascript node.js express sails.js

我很好奇是否以及如何将 sailsJS 应用程序与 View 层完全分离。也就是说,在我的案例中,不以与 RESTful API 相结合的方式管理模板、 View 、客户端 JS 和 Assets 。我想尝试部署两个独立的存储库,它们不需要知道另一个存储库如何通过请求相互交互。

我知道 sails new <apiName> --no-frontend选项,但我还想将 CSRF token 合并到我的表单中,而这些 token 在建议的 ejs 中没有这样做。使用 <input type='hidden' name='_csrf' value='<%= _csrf %>'> 的方法.

我的案例是否可能并建议公开一个端点,该端点严格处理在我的 sailsJS 服务器上授予和验证 csrf token ?

最佳答案

您可以放弃与前端有关的所有内容(--no-frontend 是一个好的开始)。如果您不生成前端,csrf Hook 和 GET/csrfToken 仍然存在,但 sails 将需要一个 _csrf 参数你POSTPUT,等等,如果启用了 CSRF Hook 。

在您的 sails 应用程序中,无论何时处理路线,您都不必返回 res.view()res.render();你可以返回 res.json() 或类似的东西。

例如,我们使用gulp与风 sails 分开管理我们的 Assets ;这样 sails 只处理 API 请求,而不处理静态文件或渲染。

关于javascript - 使用 CSRF 的 SailsJS View 层分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38913790/

相关文章:

node.js - Sequelize - 支持的最高 PostgreSQL 版本

javascript - 在 ExpressJS 中运行多个应用程序

javascript - × React - fetch ('/' ) 不会命中 Express.router 中的索引路由

JavaScript 没有在 Android webview 中重新加载?

javascript - Angular2 - 为什么初始化数组会导致数据结构出现问题?

node.js - 仍然需要使用带有 passport.js 的 cookie-parser 吗?

javascript - ReactJS + MySQL 无法使用 api 创建新对象

javascript - 在 React 中迭代点击

javascript - 在 IE 中异步加载 jQuery 会导致错误 - 但 $.ajax() 仍然运行

javascript - 嵌入的一个值中的多行(discord.js)