草庐IT

nodejs-websocket

全部标签

javascript - 在 nodejs 代码中使用 window.crypto

我正在尝试在nodejs脚本中使用window.crypto.getRandomValues方法。据我了解,当我在Node中运行这样的简单代码时,没有window元素:vararray=newUint32Array(10);window.crypto.getRandomValues(array);这就是我收到此错误的原因:ReferenceError:windowisnotdefined如何在我的代码中使用这个方法?谢谢 最佳答案 您可以使用内置的crypto模块代替。它同时提供了crypto.randomBytes()以及cryp

javascript - Websocket Javascript 的多个处理程序

我们是否可以为同一个webcocketsession设置多个处理程序(onmessage方法)?在下面的代码中,只有一个onmessage方法来处理来自客户端的消息。但是有没有可能我们可以为同一个websocketsession使用多个onmessage处理程序方法?代码:varurl=window.location.href;vararr=url.split("/");varredirectURL=arr[0]+"//"+arr[2];varwsURL=redirectURL.replace('http','ws');varws=newWebSocket(wsURL+'/abc');

有 promise 的 Javascript (Angularjs) websocket?

我在项目中使用Angularjs。我将$q.all与来自$http的多个请求一起使用,它的工作。在新的案例中,我使用了websocket,但我不知道如何将promises与websocket一起使用。$http返回promise,但websocket不是。Websocket示例:(这不是真正的代码)我发送的packid是1000,我revice的packid是2000。websocket.send(1000);websocket.onMessage(data){if(data.id==2000){//dosomething}}我去用websocket使用Promises,这可能吗?

javascript - 为什么 NodeJS 在计算素数和方面比 Rust 快?

我编写了一个基准测试来计算前10000个素数的总和,并将Rust与JavaScript进行了比较。NodeJS上的JavaScript是Rust、Scala和Java中最快的。尽管这些程序有意使用函数式风格来测试素数以展示Rust的零成本抽象的优势,但NodeJS击败了它们。NodeJS这种动态类型运行时怎么能这么快?Rust代码fnsum_primes(n:usize)->u64{letmutprimes=Vec::new();letmutcurrent:u64=2;letmutsum:u64=0;whileprimes.len()JavaScript代码functionsumPri

javascript - Nodejs 需要带有初始值设定项的类

例如我有以下类(class)varPerson=function(name){this.sayHi=function(){return"Hello,"+name+"!";}}exports.Person=Person;在nodejs中我试过了varPerson=require('modulename').Person('Will');但这只是给了身份不明。我如何在nodejs中需要一个带有初始值设定项的类?? 最佳答案 varmod=require('modulename');varsomePerson=newmod.Person(

javascript - NodeJS readFile() 检索文件名

我正在遍历一个包含文件名的数组。对于它们中的每一个,我都调用了readFile()。当调用相应的回调时,我希望检索作为参数传递给readFile()的文件名。可以吗?附上一段代码以更好地解释我的意图。varfs=require("fs");varfiles=["first.txt","second.txt"];for(varindexinfiles){fs.readFile(files[index],function(err,data){//varfilename=files[index];//IfIamnotmistaken,readFile()isasynchronous.Henc

javascript - NodeJS 和异步 hell

我刚遇到这种可怕的情况,我有一个字符串数组,每个字符串代表一个可能存在的文件(例如varfiles=['file1','file2','file3']。我需要遍历这些文件名并尝试查看它是否存在于当前目录中,如果存在,则停止循环并忘记其余的文件。所以基本上我想找到第一个存在的文件,然后回退如果没有找到硬编码消息。这是我目前拥有的:varfound=false;files.forEach(function(file){if(found)returnfalse;fs.readFileSync(path+file,function(err,data){if(err)return;found=t

javascript - 降级 NodeJs 版本和 express 版本

目前我正在做一个nodejs项目。我已经安装了处于alpha阶段的Express3.X,我的Node版本也是0.7.2-pre。我目前正在尝试通过npm降级我的express版本,但似乎我也必须降级我的Node版本。实现此目标的最佳方法是什么?我如何降级我的Node版本。非常感谢。 最佳答案 为了简化Node版本管理,您可以使用名为n的npm包 关于javascript-降级NodeJs版本和express版本,我们在StackOverflow上找到一个类似的问题:

javascript - 如何使用 Bluebird promise NodeJS Express

我将NodeJS与Express结合使用,并将Bluebird用于promises。我正在尝试如下所示promise应用程序对象,但一旦promise函数总是会抛出错误。部分代码如下:varexpress=require('express'),app=express(),bodyParser=require('body-parser'),Promise=require("bluebird");app.postAsync=Promise.promisify(app.post);app.postAsync('/api/v1/users/update').then(function(req,

javascript - 如何命中 WebSocket 端点?

我看到有一个websocket端点可以通过Java测试计算出鳍。在日志中我看到了Connectingto:ws://127.0.0.1:8080/76f48a44-0af8-444c-ba97-3f1ed34afc91/tweets就像任何其他RESTAPI一样,我想通过浏览器或curl访问它,但是当我这样做时,我看到了➜tweetstreamgit:(master)✗curlws://127.0.0.1:8080/b9b90525-4cd4-43de-b893-7ef107ad06c2/tweetscurl:(1)Protocolwsnotsupportedordisabledinl