草庐IT

socket编程

全部标签

javascript - ExpressJS - 带有路由分离的 Socket.IO

我正在努力了解ExpressJS和Socket.IO。我将我的路线放在一个单独的文件中,该文件包含在我的app.js中:varexpress=require('express'),db=require('./db'),mongoose=require('mongoose'),models=require('./models/device'),http=require('http'),path=require('path'),app=express(),server=http.createServer(app),io=require('socket.io').listen(server)

javascript - Node.js + Socket.io + Apache

我正在寻找一种通过以下方式集成Node.js+Socket.io+Apache的方法:我希望apache继续提供HTML/JS文件。我希望node.js监听端口8080上的连接。像这样:varutil=require("util"),app=require('http').createServer(handler),io=require('/socket.io').listen(app),fs=require('fs'),os=require('os'),url=require('url');app.listen(8080);functionhandler(req,res){fs.re

javascript - 以编程方式将文件上传到 ownCloud 服务器

我正在尝试设置一个Web应用程序,其中许多客户端可以通过Node.jshttp服务器连接,然后上传/下载文件,这些文件将在不同的显示器中显示。我正在考虑将这些文件存储在可以集成到我的应用程序中的免费云服务中。哦,我也在这个项目中使用socket.IO。Dropbox提供了一些API来执行此操作:https://www.dropbox.com/developers但我一直在寻找像ownCloud这样的免费解决方案,我可以在其中拥有更大的存储空间,还可以拥有自己的私有(private)服务器。有谁知道这是否可以做到?或者可以提供有关我的问题的替代解决方案的任何提示?我真的很感激任何帮助,因

javascript - 如何从我的 Express 4 路由中使用 socket.io 向连接的套接字发送事件?

这是其他人问过的问题,但由于我的Express设置不同,我无法从他们给出的答案中受益。我已经实现了socket.io,并在我的服务器上以一种简单的方式工作。这是它的工作原理:在bin/www中:#!/usr/bin/envnodevardebug=require('debug')('gokibitz');varapp=require('../../server');app.set('port',process.env.PORT||3000);varserver=app.listen(app.get('port'),function(){debug('Expressserverliste

javascript - 如何以编程方式清除 javascript 控制台?

我们如何清除Chrome、Firefox和其他浏览器中的控制台。我尝试了以下命令,但没有一个起作用:Chrome:clear()Firefox:console.clear()有什么想法吗? 最佳答案 对于每个浏览器,它都是不同的,因此您可以编写一些脚本,以便它适用于不同的浏览器。或者你可以使用这个脚本console.API;if(typeofconsole._commandLineAPI!=='undefined'){console.API=console._commandLineAPI;//chrome}elseif(typeof

javascript - 以编程方式打开和关闭 Chart.js 工具提示

Chart.js2.2.1知道如何触发当我将鼠标悬停在数据点上时运行的代码,以及当我将鼠标移开时运行的代码吗?我需要以编程方式显示和隐藏图表的工具提示。openTip(oChart,datasetIndex,pointIndex){//howtoopenaspecifictooltip?}closeTip(oChart,datasetIndex,pointIndex){//howtoclosethesametooltip?}如果可以的话,我会展示示例代码,但我什至不知道从哪里开始。chartmethoddocs没有帮助。JSFiddle 最佳答案

javascript - 以编程方式打开 Angular 带日期选择器

我正在使用AngularJS1.2.12和angular-strap2.0.0-rc.2(mgcrea.github.io/angular-strap/),但我找不到从内部打开日期选择器/时间选择器小部件的方法Controller。我想像这样使用带有日历图标按钮的输入组:我现在可以轻松地为按钮提供ng-click功能并从我的Controller打开日历。我只是找不到如何做到这一点的方法。有什么想法吗? 最佳答案 另一种解决方案是将按钮更改为标签,并使用“for”属性。我喜欢它,因为它消除了额外的javascript来打开日期选择器,

javascript - socket.io 在 x 秒/第一次尝试获取响应失败后停止重新发出事件

我注意到每当我的服务器离线时,当我将其切换回在线时,它会收到大量套接字事件,这些事件是在服务器关闭时触发的。(现在已经过时的事件)。有没有办法阻止socket.io在x秒内未收到响应后重新发出事件? 最佳答案 当开源库的所有其他方法都失败时,您可以去研究代码,看看您能找出什么。在花了一些时间使用socket.io源代码之后...问题的关键似乎是这段代码here在socket.emit()中:if(this.connected){this.packet(packet);}else{this.sendBuffer.push(packet

javascript - 如何让我的网络浏览器以编程方式说话?

是否可以让网站以编程方式向用户传达欢迎信息?假设我想在成功登录我的网站后向用户打招呼。我知道我可以录制问候消息(即作为MP3)并播放,但我希望能够以编程方式执行此操作,因为所有用户的名称都会不同。例如,我可能想说Welcome,JohnDoe当JohnDoe登录时。我怎么能用普通的javascript做到这一点?注意:这不打算在生产系统中使用,而是打算用作更大的UX实验的一小部分。 最佳答案 对于window.speechSynthesis.speak()要在Chromium浏览器上呈现音频输出,用户需要拥有speech-dispa

javascript - 在 ("message"上定义 Socket.io 的最有效方法)处理程序

Socket.io的例子都遵循这个模式io.sockets.on("connection",function(mySocket){mySocket.on("mymessage",function(myData){...});});在我看来,这将为每个连接创建一个新的回调函数。假设每个套接字都以相同的方式响应消息,像这样为所有套接字定义一次处理程序是否会更节省内存:functionmyMessageHandler(data){...}io.sockets.on("connection",function(mySocket){mySocket.on("mymessage",myMessag