简而言之:“电线上的数据”是什么意思。它与发送的HTML有什么不同?当服务器没有发送HTML时会发生什么?
Meteor使用线路上的数据,这意味着服务器发送数据而不是HTML,客户端会呈现数据。 - https://guide.meteor.com/
我看着这个 - Does routing in Meteor transfer HTML between server and client? - 然后在那里,回答者写道:
“最初传输所有应用程序视图,因此客户端路由只是根据当前URL呈现适当的模板,没有执行额外的HTTP请求来获取服务器端呈现的HTML,就像传统LAMP中的情况一样(或者任何其他基于SSR的堆栈网站“
然后我的问题是,是否发送了一个视图不是那个HTML?
我的假设是(粗略地说,我不是那个知识渊博的):
通常,如果我使用URL请求资源,服务器会找到相应的文件并将该HTML发送给客户端。
通过“线上数据”,服务器已经发送了所有文件。当您使用URL提交请求时,一开始就来自服务器的客户端数据已经知道如何处理URL,组装一段HTML供您查看。
非常感谢任何有用的东西。
答案 0 :(得分:3)
电线上的数据主要指Meteor在页面加载时与服务器形成websocket连接的方式,然后传输通过该连接所需的数据。
websocket是一个实时连接,随着数据的变化,更新会自动通过网络推送,客户端会实时更新。 (类似于有多少人可以在Google文档中同时编辑同一文档,并实时查看彼此的变化)
这是使用出版物和订阅完成的。一旦客户订阅了数据源,服务器将发送与出版物匹配的所有文档。然后,服务器将监视该更改源,并将任何新的匹配文档,更新或删除现有文档发送给客户端
你几乎正确地说HTML是在初始请求中发送的。 Meteor旨在使用客户端渲染框架(如React,Vue,Angular和Blaze)运行,尽管它也可以执行静态HTML。对于客户端渲染框架,Meteor将发送一个几乎空的HTML文档和一个javascript包,其中包含有关如何请求所需数据的信息,并根据返回的数据构建其余的HTML