Articles of meteor

将二进制数据从Nodejs缓冲区写入Meteor客户端的blob

我试图创build一个CSV文件,将在服务器上以UTF-16LE编码进行保存,然后将结果传递给客户端。 这就是我在Coffeescript中所做的: Meteor.methods { iconv: (data, from="UTF-8", to="UTF-16LE") -> Iconv = Meteor.require('iconv').Iconv iconv = new Iconv(from, to) res = iconv.convert(data) res } 现在,如果我用线路从服务器写入文件 fs.writeFileSync('/tmp/test.csv', res) 该文件正确生成。 但是,我想避免在服务器上创build一个文件,并将其直接保存在客户端(使用filesaver库 )。 示例客户端代码如下所示: exportToCsv = (data="tête", filename) -> callback = (err, res) -> blob = new Blob([res], {type:'text/csv;charset=UTF-16LE'}) saveAs(blob, filename) Meteor.call('iconv', data, callback) 正如你所看到的,我testing的数据是一个带有特殊字符('ê')的简单string。 我的问题是我无法将nodejs缓冲区传递给客户端。 它被自动序列化为: Object {0: 116, […]

Nodejs持久variables

是否有某种类似Session的variables来保存Nodejs中的数组? 我的意思是像我可以在其他范围内定义名称,并在不同范围内访问(即:variables(“Array1”)在函数A中定义,但在函数B中访问并保留,直到它被销毁)。 原因是我使用Meteor将大文件分割成小块并将块传回服务器。 我试图使用fs.WriteFile和fs.AppendFile的组合,但不知fs.AppendFile的文件是沿途被毁坏的(文件是一个video和复制文件发生播放错误)。 我读到blob可以由构造函数重build的地方。 不过,我需要将其传递给全局variables或会话variables才能这样做。 所以…我怎么能在Nodejs中使用这样的东西?

与meteor一起使用Solr

我正在和meteorJS合作,目前是新的。 由于Meteor只使用Mongo DB,因此我需要将Solr与它集成,以便更快地进行search。 谷歌search,但无济于事。 任何人都可以与我分享一些方法,链接或代码片段,我可以在我的Meteor项目中使用Solr。

meteor失败,不能从npm-shrinkwrap安装npm-packages

我几天来一直在诊断这个问题,并且testing了与这个类似的“meteor”和“npm”依赖关系出现的顶级问题解决scheme。 我和我的后端工程师都难倒了。 我使用的是OSX 10.10.3,ruby 1.9.3,node v0.10.36,npm 1.4.28,meteor 1.1.02。 另外,由于错误似乎表明我不在代理之后。 我的环境PATH是: export PATH =“/ usr / local / bin:/ usr / bin:/ bin:/ usr / sbin:/ sbin” 这是错误: => Started proxy. => Started MongoDB. npm-container: updating npm dependencies — hummus, shipping-ups… npm WARN package.json packages-for-meteor-smartpackage-1wscwem@0.0.0 No description npm WARN package.json packages-for-meteor-smartpackage-1wscwem@0.0.0 No repository field. npm WARN […]

从渲染事件访问时收集为空?

我有一个我正在订阅的集合,但是当我尝试从我的onRendered事件访问它时,它总是以空数组的forms返回。 以下是我正在使用的方法: FlightCounts = new Mongo.Collection("flightCounts"); if (Meteor.isClient) { Meteor.subscribe('flightCounts'); Template.hello.rendered = function(){ var counts = FlightCounts.find().fetch() console.log(counts) } } if (Meteor.isServer) { Meteor.startup(function () { // code to run on server at startup Meteor.publish('flightCounts', function(){ return flightCounts.find(); }) }); } 任何人都可以看到为什么我的collections将永远是空的吗? 任何build议如何得到它填充?

允许用户从公共文件夹Meteor.js下载文件

我正在生成一个.xlsx文件,然后将其放入"../web.browser/app/cheques.xlsx" 。 据我所知这是一个相当于公共文件夹内的构build。 问题是,我无法设法使其可供下载。 这是服务器方法中的一段代码,我把一个文件放到那个地方: workbook.xlsx.writeFile("../web.browser/app/cheques.xlsx") .then(function() { console.log('done'); }); 那么我应该使用fs还是Picker.route来完成这项工作?

如何使用导入这个npm包?

我想导入这个包。 链接只提供这个例子 var LineChart = require("react-chartjs").Line; var MyComponent = React.createClass({ render: function() { return <LineChart data={chartData} options={chartOptions} width="600" height="250"/> } }); 但如何导入像这样 import {LineChart } from 'react-chartjs'; 我无法弄清楚如何 。线; 在import风格

在meteor如何创build一个multichatroom应用程序与不同的房间独特的url?

我有基本的聊天室工作(单页),但我想生成一个独特的一个,当我浏览我的url。 例如用户浏览到chatroom.com并被redirect到chatrooom.com/room1,然后他/她可以与朋友分享该url与之聊天。 我怎么去做这个?

如何为客户端设置Meteor WebSocket端口?

如何设置WebSocket将监听的端口? 我试图在OpenShift上部署Meteor,但是他们有一个nodejs-proxy服务器,它监听端口8000而不是80端口,并redirect到我的Meteor守护进程。 它正在工作,因为手动创build的WebSocket对象工作正常。 我已经设置ROOT_URL,但没有成功。 它出现在浏览器中,如下所示: process.env.ROOT_URL = 'http://' + process.env.OPENSHIFT_APP_DNS + ':8000' 我正在使用这个快速入门: https : //github.com/openshift-quickstart/openshift-meteorjs-quickstart 。 请参阅文件meteorshim.js以供参考。 一切正常,包括长期投票。

我怎么能通过meteor的HTTP.call()节点的额外选项?

在Meteor中执行HTTP.get()调用时,出现SSL错误 , UNABLE_TO_VERIFY_LEAF_SIGNATURE 。 上面的链接指向涉及Node参数的解决scheme(例如{rejectUnauthorized: false} ),但是如何将其中的任何一个传递给Meteor还不清楚。 我试过HTTP.get(url, {rejectUnauthorized: false})没有运气。