Tag: 同构

SPA中的同构消耗REST服务

目前,我正在进行一个新项目的规划阶段,这个项目由一个店面,一个高度活跃的用户仪表板以及通过店面提供的高度互动的迷你应用程序来提供。 我们试图摆脱使整个平台成为SPA的束缚,用React为前端视图deviseFlux架构上的全部function。 像大多数SPA一样,一个问题就是SEO。 我已经基于este.js dev堆栈原型化了一个同构解决scheme。 一个问题是,我们的应用程序几乎从一个REST风格的服务器(它与服务于SPA的Web服务器分开)中消耗所有数据。 这意味着Web服务器需要从RESTful服务器获取大量的数据,以同构地生成HTML快照。 我认为我自己的一个单独的抓取程序会定期抓取整个店面,同时生成当Web服务器遇到search引擎抓取程序时可以提供的页面的HTML快照。 我不确定这是否是一个好的方法,因为它可能会引入额外的维护,坦率地说,似乎有点脆弱。 我可以让Web服务器同时生成HTML,但是我担心服务器会从REST API中获取相当多的数据,因此担心普通用户的服务器不能正常工作。 有没有更好的办法来处理这种情况?

要求在胡须模板上的节点和浏览器一样

这个问题使用霍根作为例子,但适用于任何模板。 我试图做一些同构(在客户端和服务器上工作)。 在客户端,如果我需要在胡须文件中: var tpl = require('./something.ms'); 然后,browserify +转换检测到这是一个扩展名的胡子文件, tpl是一个对象,其中一个函数是.render 。 我想要完全一样的结果,如果我是用NodeJS运行上述行。 默认情况下,节点只是期望这个文件是一个JavaScript文件,所以结果看起来像这样和错误: (function (exports, require, module, __filename, __dirname) { <h1>some html</h1> …

React app:使用Node / express作为中间代理服务器

我正在为传统的RESTful API服务器(Golang)构build一个React应用程序。 直接的方法很容易: React –> Redux (or any flux) –> Go server 不过,我现在想插入Node / express作为一个中端,所以堆栈变成: React –> Redux –> Node/express –> Go server 我能想到的好处是: 服务器端渲染 更快的表单validation 在发送到Go API之前清理数据,并有许多令人惊叹的节点包 轻松pipe理身份validation和会话 缺点是显而易见的,随着增加的层次,任何最终转到后端的请求将需要更多的时间来回。 我对build筑非常陌生,知道人们是否在生产项目中使用这个额外的堆栈会很高兴。 经验如何?