在非流星网页中嵌入流星应用程序

时间:2014-02-07 07:59:38

标签: javascript drupal meteor embed ddp

我正在尝试在网络服务器(B)上运行的服务器(A)上托管一个流星应用程序(a)(在我的情况下,流星应用程序在meteor.com和网页上运行(b) )是在Drupal上构建的,并托管在运行nginx和php的另一台服务器上。我找到了以下可能的解决方案,但没有一个很好或优雅。

  • 将app(a)插入网页上的iframe(b):不能很好地整合,笨拙的解决方案。
  • 在网页(b)中添加已编译的meteor app js脚本,并提供必要的 meteor_runtime_config ,指示应用程序连接到服务器(A):这有效,应用程序已嵌入,我有访问Meteor js对象,但应用程序呈现为<html><body>标签,因此我无法真正将其放置在页面中。感觉就像打击流星而不是玩得好。
  • 通过https://github.com/eddflrs/meteor-ddp等DDP客户端连接到流星服务器:虽然这提供了流星的大部分实时数据传输功能,但感觉好像我没有真正使用流星,因为我必须实现所有js网页中的逻辑(b)并让流星只处理数据传输。

是否有任何其他解决方案或改进前面提到的方法?这甚至是可能的,还是我试图以一种不是设计的方式使用流星? 我在github上看到它提到“我们支持在非流星内容中嵌入Meteor内容”https://github.com/meteor/meteor/issues/546#issuecomment-11458672但这实际上需要什么呢?

1 个答案:

答案 0 :(得分:6)

github引用是无关紧要的。它讨论了在流星应用程序中集成第三方小部件。

您应该查看来自meteor-talk google群组的this threadthis one

基本上你的假设是正确的。目前,meteor并不是构建嵌入其他地方的小部件最令人愉快的解决方案。

此外,从外部域嵌入资源存在安全问题和后果。

我实际上看了FirebaseAPISpark,它们为任何javascript前端提供了一个简单的后端。但是,正如您已经指出的那样,这需要自己连接您的前端代码。但它应该比DDP更容易。