如何在Meteor中关闭和打开DDP请求
How to turn off and on DDP requests in Meteor?
我要做的是在Cloudflare的CDN中缓存流星站点,并将DDP请求转到另一个URL。我有工作,但我想做的是使它,所以不是一个单一的DDP请求,直到订阅实际需要它。站点的公共部分完全使用Fast Render渲染,并由CDN缓存(直到我通过编程清除它)。直到用户登录是一个单一的DDP请求所需要的,因为所有的信息都嵌入在CDN缓存页面感谢快速渲染。
我认为这里的想法很重要:非常受欢迎的公共页面不经常改变(或曾经)由CDN缓存,没有单一的DDP请求浪费资源,直到用户登录,在这一点上没有选择,只能通过DDP提供动态数据(但也不是资源密集型,因为只有0.01%的访问者是注册会员)。
那么如何完全控制何时发出DDP请求呢?下面是典型的启动流程的第一个请求:
http://snapplr.com/e9vt流星黑客的Arunoda推荐如下
"尝试在流星连接建立之前断开它。你可以这样做:
Meteor.default_connection.disconnect ()
或者你可以覆盖default_connection的一些方法,强制它不发送数据。尝试检查livedata包的livedata_connection.js。"
我尝试了断开连接()的东西,但不能让它工作。有人有更具体的想法吗?
看起来Meteor.disconnect()就是你需要的。现在我注意到您说您已经尝试过了,但是您的函数调用的签名与最新的文档不匹配。我不确定Meteor.default_connection.disconnect()
的default_connection
部分来自哪里。
在订阅中还有一个stop()函数可用。如果您需要为每个订阅调用该方法来实现您的请求,则会有点难看,因此这似乎不太可能,但值得一试。
- ajax请求的顺序总是不同的
- Meteor如何接收HTTP请求
- 有没有一种方法可以防止img get请求使用css或js发生
- 从ajax请求中获取javascript对象
- JSONP请求返回结果,但也触发error_callback
- 在localhost Dev Box上测试JSONP请求的最佳方式
- Ajax请求文档就绪会导致jquery加载缓慢
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- 在openshift node js应用程序中获取请求
- 反应路由器弄乱了请求网址
- 在我的情况下,如何进行http请求
- 使用密码对话框Javascript请求帮助
- servlet中的请求对象,而不是从jsp接收参数值
- 否'访问控制允许来源'标头存在于IISNOde中请求的资源(AngularJS+NodeJs)上
- JavaScript代码未正确检查ajax请求
- node.js请求数据事件未在CORS ajax调用中触发
- 如何检测第三方广告服务器请求
- 在Rails中更新Div,而不更改更新请求后的视图
- 如何在Meteor中关闭和打开DDP请求