草庐IT

异步IO

全部标签

javascript - Angular 2调用多个异步方法

我有一个正在构建的移动应用程序,现在我正在处理身份验证。在我访问主页之前,我需要访问我构建的API上的各种端点,然后才能向用户显示数据。在Postman中测试时,所有端点都返回正确的数据,但是当我在我的应用程序中使用它时,我在第二次异步调用中得到了一个null值。我确信这与调用这些调用的顺序有关,所以我只是在寻求一些帮助,了解如何正确地等待一个调用完成,然后再开始另一个调用。publiclogin(){this.showLoading();this.userService.getUserIdFromUserName(this.registerCredentials.username)/

c# - 异步回发后如何保持对同一控件的关注?

我有3个文本框,一个在更新面板中,它每4秒刷新一次。在刷新期间,不在更新面板中的控件也会失去焦点。我想专注于这些控件。这是我的代码:User:Message:谁能帮帮我? 最佳答案 这是使用jQuery的@Darshan脚本的略微修改版本。我喜欢他的解决方案,因为这1个脚本将适用于所有UpdatePanel,因此您不必专门为每个UpdatePanel编写代码。我的修改是:使用jQuery执行空检查不污染全局命名空间编辑:Tab键与具有自动回传的文本框一起按预期工作。/*RetainelementfocusafterUpdatePan

javascript - node.js + socket.io + redis + rails — 实时应用程序

我需要向我的应用程序(RubyOnRails)添加实时性,因此,我认为更好的方法是使用node.js+socket.io+redis。我在后端(node.js)中有这个application.js文件varapp=require('http').createServer();vario=require('socket.io');varredis=require('redis').createClient();var_=require('underscore')._;io=io.listen(app);io.configure(function(){io.set("transports"

javascript - 在 node.js 中使用异步 waterfall 时的 "err"参数

我正在尝试执行一系列函数,每个函数都将回调传递给下一个。现在它看起来像这样(请原谅任何小错误,我在发布时重写它!):functionfunc1(callback){callback(null,"stuff");}functionfunc2(input,callback){callback(null,"foo"+input);}async.waterfall([func1,func2],function(err,result){sys.puts(result);});我的第一个问题是我不确定如何优雅地启动这个函数,因为它不能接受输入。我最终会将该函数包装在本地函数中,但这仍然让我有些不安

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 - 检索 io.socket 中的所有套接字对象

我希望从io.sockets中获取所有单独的套接字对象并迭代它们中的每一个。类似于:for(socketinio.sockets.something()){//dosomethingwitheachsocket}要么我做错了,要么我一定遗漏了什么。想法? 最佳答案 官方的方法是:io.sockets.clients().forEach(function(socket){..});或按房间过滤:io.sockets.clients('roomname')..sameasabove..这是基于上述建议的建议,因为socket.io的内部

javascript - Node.js 的回调函数都是异步的吗?

我正在努力学习Node.js,我在每个教程中听到的都是“Node是异步的并且没有阻塞!”我听说在常规浏览器中JavaScript只有某些东西,例如AJAX调用可以异步或非阻塞(使用回调)...Node.js也是这样吗,或者都是Node.js回调异步/非阻塞函数? 最佳答案 areallNode.jscallbackfunctionsmadeasynchronous/non-blocking?没有。只有I/O通常是异步的,但许多其他回调是同步的。始终检查文档。异步函数的例子:异步Filesystem访问(不过他们有没有回调的同步对象)

javascript - 在 expressjs 路由中使用 socket.io 而不是在主 server.js 文件中

我有express/nodejsapi。我正在向它添加socket.io功能。目前我所有的路由都在单独的文件夹中,我将它们包含在server.js文件中并将它们用作app.use()函数。在server.js文件中,我还通过监听特定端口(例如3000,如下所示)来启动express服务器。letserver=app.listen(3000);根据所有谷歌搜索,我发现我需要传递服务器变量来初始化socket.io,如下所示。letio=require('socket.io')(server);现在的问题是,既然它需要这个变量,那么我如何在不同文件夹中的路由文件中使用socket.io来发

javascript - 没有乱七八糟的回调的 JavaScript 异步编程

我想将异步函数转换为同步函数。functionfetch(){varresult='snap!';$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?",functionmessyCallback(data){result=data;});returnresult;}document.write(fetch());​Seeinaction结果总是“啪!”,因为$.getJSON在fetch()完成后运行。我的第一个

javascript - Socket.io 1.0 + express 4.2 = 无套接字连接

如标题所述,我正在尝试将socket.io1.0.4与express4.2一起使用,所有/?EIO请求都返回404。下面是我的文件:./bin/www:#!/usr/bin/envnodevardebug=require('debug')('generated-express-app');varapp=require('../app');app.set('port',process.env.PORT||3000);varserver=app.listen(app.get('port'),function(){debug('Expressserverlisteningonport'+se