Tag: socketstream

套接字streamasynchronous调用到rpc行动内的MySQL

首先,我需要告诉你,我对nodejs,socketstream,angularjs和JavaScript的奇观一般都很陌生。 我来自Java背景,这可能解释我对做asynchronous的正确方式的无知。 为了玩弄东西,我从americanyak安装了ss-angular-demo 。 我现在的问题是,Rpc似乎是一个同步接口,我的电话mysql数据库有一个asynchronous接口。 如何在Rpc调用时返回数据库结果? 以下是我使用socketstream 0.3所做的工作: 在app.js我成功地告诉ss允许我的mysql数据库连接通过把ss.api.add('coolStore',mysqlConn); 在那里在正确的地方( 正如在socketstream文档中所解释的 )。 我使用mysql npm,所以我可以在Rpc中调用mysql 服务器/ RPC / coolRpc.js exports.actions = function (req, res, ss) { // use session middleware req.use('session'); return { get: function(threshold){ var sql = "SELECT cool.id, cool.score, cool.data FROM cool WHERE cool.score > " + threshold; if (!ss.arbStore) { console.log("connecting to mysql […]

整合yeoman和socketstream

我一直在开发angular度yeoman项目和开发过程是优雅与yeoman提供necesaary工具的发展目的。 在这个项目的这个阶段,我们正在考虑将socketstream添加到这个项目中,但是socketstream提供了和yeoman类似的用法,但是经常发生冲突。 例如,像两个如何提供不同的目录结构,是否有可能使用套接字stream,并添加一些生成/皮棉任务? 或者是有没有办法整合yeoman和SS为一个项目。

socket.io-stream将文件写入光盘,然后完成后发出文件path

当我从客户端发送文件到服务器时,我有一个使用socket.io-stream的问题。 我将文件path推送到mongodb,然后将文件保存到文件文件夹。 问题是,当光盘写入文件时,文件path在写入完成之前返回给客户端,然后img元素paht正确,但图像不在页面上呈现。 下面的代码按照预期工作,但手动等待100毫秒,然后返回到客户端的path。 如果图像太大,这100毫秒将不会保证。 任何其他解决scheme 服务器端: ss(socket).on('fileUpload', function(stream, data) { Chat.findByIdAndUpdate(data.roomId, { $push: { "messages": { author: data.author, date: Date.now(), isFile: true, extension: data.extension } } },{safe: true, new: true, upsert: true}, (err, message) => { if(err){ console.log(err); } let msg = message.messages[message.messages.length – 1]; let filename = path.join(__dirname, 'public/files' , `${msg._id}.${msg.extension}`); stream.pipe(fs.createWriteStream(filename)); setTimeout(() […]

如何使用KarmatestingAngularJS / SocketStream / Node.js应用程序

我正在处理由SocketStream / node.js服务器提供的AngularJS应用程序。 我有一个AngularJS服务,在SocketStream服务器上调用API函数,迄今为止进展良好。 但现在是开始编写第一个testing的时候了,所以想到的第一个testing框架是Karma / Jasmine,因为这是推荐的AngularJS。 到目前为止这么好,但是由于我的AngularJS模块是使用'require'(SocketStream的版本, 而不是 require.js)导入的,并且服务器api调用是testing的一部分,我需要configurationKarma来加载SocketStream(至less在客户端) 。 我仔细看了一下' https://github.com/yiwang/angular-phonecat-livescript-socketstream ',但是当我运行这个例子时,我得到了运行时错误,可能是因为我安装了更高版本的变化依赖关系。 我设法通过在app.js中添加'ss.client.packAssets()'来打包我的SocketStream应用程序,并运行'SS_PACK = 1节点app.js'来解决'required'问题,但是当我启动karma时,它会logging一条错误消息他说: 'Chrome 23.0 (Linux) ERROR Uncaught TypeError: undefined is not a function at /the…path/client/static/assets/app/1368026081351.js:25' '1368026081351.js'是SocketStream打包的资产文件。 如果我不加载它的错误信息是'require is undefined',所以我最好的猜测是错误发生在SocketStream需要的代码里面。 也因为我在DEBUG模式下运行业力,可以看到所有的文件被送达。 我一直在尝试不同的方法来找出正在发生的事情,但现在是有效的。 所以我的问题是: 其他人是否使用Karma成功地testing了AngularJS / SocketStream? 有没有人有任何build议,我可以修复,或至lessdebugging这个问题? 有没有其他的解决scheme?