使NodeJS服务器通过USB自动检测连接的设备

我做了一个使用NodeJS服务器的色度计的Web界面,该服务器使用serialport npm库读取USB串行input,并将该信息发送到本地网页。 比色计基本上是一个使用微控制器的电路, 通过USB连接到我的电脑 ,使用中间USB模块。 该网页的状态信息如: “检测到的设备” (如果该页面已经启动,设备已经插入USB), “设备断开” (如果我从USB拔出设备)。 该消息更新完美的情况下,如从USB端口拔出设备,但我不能使其自动检测插入到USB中,而不会执行浏览器页面刷新。 当USB设备插入 PC并更新状态信息时,是否有任何解决方法使节点服务器自动检测 ? 服务器代码: https : boardPort = '/dev/ttyACM0';目前,我正在Linux上这就是为什么boardPort = '/dev/ttyACM0'; 。 我也在Windows或其他编程语言的解决scheme。

可变variables可以从闭包访问

我是新来的JavaScript。 这是我的代码 …… var filename, result, user=["a", "b", "c","d"]; for(var p=0;p<user.length;p++) { filename=userID[p]+'_'+user[p]+'.json'; fs.readFile(filename, function read(err, data) { if (err) {throw err;} result = data.toString(); if (result.charAt(result.length-1) === ',') result = result.substring(0,result.length-1) + ']}'; console.log(p+filename+result+"\n\n"); //here }); } 在“here”中,p的值始终显示最后一个索引,在这种情况下,对于所有迭代,文件名是最后一次迭代。如何在“here”中获得p的正确值。 对于我的编译器显示“可变的variables是从闭包访问”。

需要在仿真器上使用node.js创build自适应卡的示例代码

嗨任何人都可以帮助我创build自适应卡在bot框架模拟器使用node.js? 我尝试了仿真器上的https://docs.microsoft.com/en-us/bot-framework/nodejs/bot-builder-nodejs-send-rich-cards上的例子,但是它没有创build自适应卡。

如何把这个curl请求转到一个node.js请求?

我有这个curl请求工作,我希望把它变成node.js代码。 curl -H "Content-Type: application/json" -X POST -d '{"text":"ibm","date":{"from":"20170330","to":"20170530"},"restrictedDateRange":false}' https://finsights.mybluemix.net/api/query 然而,我尝试了我的方式,但我确信我做了错误的响应正文不符合我从curl请求中得到的。 我的代码失败了: server.get('/hello', function create(req, res, next) { // //sample request request({ url: "https://finsights.mybluemix.net/api/query", method: "POST", headers: { "content-type": "application/json", data: { "text": "ibm", "date": { "from": "20170330", "to": "20170530" }, "restrictedDateRange": "false", } }, json: true, // <–Very important!!! }, function(err, res, body) { […]

如何从Azure容器获取文件夹列表?

我想要在nodejs中的所有文件夹和文件在一个azure色的容器中 我正在使用azure存储库获取blob,但无法find任何示例来列出容器下的所有文件夹。 我在auzure中倾销(出口)我的anaylitics数据到存储容器。 现在我试图阅读这些文件 我的存储结构像 ios-analytics-full/ios_06cd82e4db0845b9bef73c5b22bea2fa/Event/2016-09-29/18/270b58c-04d7-4e5d-a503-cdce24a3940c_20160929_184723.blob 我想读取为每一天创build的所有文件夹和这些文件夹下的文件 var containerName = "assist-ios-analytics-full"; blobService.listBlobsSegmented(containerName, null, {maxResults : 10}, function(err, result) { if (err) { console.log("Couldn't list blobs for container %s", containerName); console.error(err); } else { console.log('Successfully listed blobs for container %s', containerName); console.log(result.entries); console.log(result.continuationToken); res.json(result); } }); 最新的文件夹将是今天的date ios-analytics-full/ios_06cd82e4db0845b9bef73c5b22bea2fa/Event/2017-05-31/18/270b58c-04d7-4e5d-a503-cdce24a3940c_20160929_184723.blob

我怎样才能访问其他尝试块try块中的variables?

http://blog.grossman.io/how-to-write-async-await-without-try-catch-blocks-in-javascript/在这个链接中,有一些代码可以在try catch中访问一个variables,但是当我尝试在我的服务器这是不行的,因为它超出了范围。 我怎样才能做到这一点? try { const foo = "bar" } catch (e) { console.log(e) } try { console.log(foo) -> is not defined } catch (e) { console.log(e) }

ER_TRUNCATED_WRONG_VALUE:错误的date时间值

所以我最近完成了一个研究项目的申请。 这一切都很好,而我所剩下的就是将应用程序投入生产。 我使用的Node.js与MySQL(我知道,我们不喜欢,但有人得尝试它)。 我有一个socket聊天消息添加到消息表,其中包含文本,date时间等date时间设置为new Date() 。 现在,当我把应用程序放在生产服务器(重新安装依赖关系,mysql等)时,当我写消息时,我突然得到这个错误: Error: ER_TRUNCATED_WRONG_VALUE: Incorrect datetime value: '2017-06-01T09:45:06.253Z' for column 'message_datetime' at row 1 我在开发中没有得到这个错误,所以我问自己是否下载了不同版本的mysql …我做了: 发展: mysql Ver 14.14 Distrib 5.5.54, for debian-linux-gnu (i686) using readline 6.3 生产 mysql Ver 14.14 Distrib 5.7.18, for Linux (x86_64) using EditLine wrapper 消息表如下所示: CREATE TABLE message ( message_id INT AUTO_INCREMENT, message_sender_id VARCHAR(80) […]

在对象数组中find需要的元素的最佳方法

我有我的class的对象的数组。 我的类有variables的名称是唯一的每个对象创build。 现在,我想查找名称为“test”的数组中的对象。 我想尝试像创build第二个数组与名称作为元素,当我在我的第一个数组中创build新的对象创build第二个数组中的对象,以便他们共享索引号。 像这样的东西: arrayOfObjects.push(new obj("test")); arrayOfNames.push("test"); function findIndexNumberOf(name){ for(var i = 0; i < arrayOfNames.length; i++){ if(arrayOfNames[i] === name) return i; } } 但我认为这是相当强大的解决scheme,所以我想知道有没有更好/更聪明/更快的方式做到这一点。

IBM Watson对话 – 无法将node.js连接到watson对话

我有一个IBM沃森对话应用程序的问题。 我有我的应用程序设置,并尝试将其连接到我的node.js应用程序。 我正在按照这个教程在这里: https : //github.com/watson-developer-cloud/node-sdk#conversation和我使用官方node.js api ibm提供。 不幸的是,它不起作用,我得到以下错误。 { Error: Not Authorized at Request._callback (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/lib/requestwrapper.js:87:15) at Request.self.callback (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/node_modules/request/request.js:188:22) at emitTwo (events.js:106:13) at Request.emit (events.js:191:7) at Request.<anonymous> (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/node_modules/request/request.js:1171:10) at emitOne (events.js:96:13) at Request.emit (events.js:188:7) at IncomingMessage.<anonymous> (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/node_modules/request/request.js:1091:12) at IncomingMessage.g (events.js:291:16) at emitNone (events.js:91:20) code: 401, error: 'Not Authorized', description: '2017-06-01T08:57:57-04:00, Error ERCDPLTFRM-DNLKUPERR occurred when accessing […]

Webpack中的-p是什么?

我有这在我的package.json : build:prod SET NODE_ENV=prod && webpack -p -p是什么意思? 我已经看过webpack文档,但找不到任何东西。 谢谢。