Tag: node.js

从Nodejs发送数据到Python

我已经testing了多个节点包和试图在节点和python之间进行通信的教程,但是还没有取得任何成功。 下面是一个简单的节点应用程序stream数据: (在https://polygon.io/docs/#getting-startedfind) const NATS = require('nats') const SERVERS = [ 'nats://nats1.polygon.io:30401', 'nats://nats2.polygon.io:30402', 'nats://nats3.polygon.io:30403' ] // Connect to Polygon NATS cluster: const nats = NATS.connect({ servers: SERVERS, token: 'YourAPIKeyHere' }) // Subscribing to Currency/FOREX Data… nats.subscribe('C.*', (msg, reply, subject) => { let forex = JSON.parse( msg ) //console.log('FOREX:', JSON.stringify( forex, null, 4 )) console.log(forex) }) […]

电子GUI与C#后端

用例 我有一个使用WinForms的C#开发的现有项目与GUI的自定义控件。 我们对使用HTML / CSS / JS编写GUI的方法感到惊讶,我们正在寻找使用上述语言为我们的桌面应用程序编写GUI的最佳方法。 我们只需要支持Windows设备。 我的忧虑: 使用电子边缘来处理build议并不需要很长时间。 虽然我并不担心一切工作,但我担心: debugging我的C#代码(我仍然希望能够从VS开始我的整个应用程序,并debugging它看起来我习惯了)。 我读过,我需要附加到node.js应用程序,以便后来debugging我的C#代码。 由于整个程序语言是用C#编写的,听起来像是一种痛苦? 就我而言,边缘会让它像一个进程一样运行。 我可以将电子应用程序视为一个自己的线程,当我的C#代码停留在某个地方时,它仍然可以运行吗? 我的select: 我仍然是积极的我想用HTML / CSS / JS编写我的桌面GUI。 我认为,而不是使用电子边缘是写一个自己的电子应用程序,它使用命名pipe道与我的C#后端进行通信。 我不知道是否有更大的路障,为什么我不想这样做,并使用电子边缘呢? 我的问题: 我想得到上面提到的两个问题的反馈,我也想获得关于将GUI创build为自己的电subprocess的选项的input,这样当有人运行我的应用程序时,我有两个进程(GUI +后端)。

如何在HTML页面上创build一个常量脚本

我知道标题听起来有点奇怪,但下面将解释它, 我有一个网站与JavaScript定时器的聊天脚本每5秒刷新消息,这使得它很烦人。 我打算切换到nodejs并制作一个实时聊天应用程序。 要将用户连接到服务器,请使用以下命令: <script> var c = new WebSocket("ws://localhost:8001"); </script> 这个脚本是每个页面上都需要用户保持连接,但问题是它会创build一个新的websocket每次这是不好的性能和加载时间,我已经注意到在Facebook上导航栏和聊天栏导航时不重载,那么如何实现呢? 提前致谢

会话值无法加载的请求,但加载下一个请求

作为一个节点的新手,我现在越来越困惑了好几天了,我想我再也忍受不住压力了。 所以我觉得我唯一的出路就是在睁开眼睛的时候在这里张贴我的挑战,试图以任何方式,我可以没有任何积极的结果。 我正在使用快递节点,以及express-session和redis来构build我的应用程序。 同时,我正在使用Mysql数据库来存储我的数据,并使用redis来存储会话。 一切似乎正常工作,但问题已经与我的会话variables。 当我在会话中存储一个值,并试图检索它,它不会加载,同时,在控制台中输出的值是完美的。 但是,当我尝试请求其他内容时,则显示以前的会话值。 所以就像之前的会话被加载在当前的请求。 我正在使用把手作为我的模板。 我只是不知道我在做什么错,但都是一样的,这很奇怪。 正如我所指出的,先前的会话值在下一次请求时加载,或者说当前的请求加载先前的会话值。 有什么build议吗?

在Rasp PI上的Ember JS

我在我的RASP Pi上尝试了Ember JS。 不幸的是,由于以下错误,我无法继续使用我的npm进行余烬安装: npm ERR! Error: No compatible version found: broccoli-merge-trees@'^2.0.0' npm ERR! Valid install targets: npm ERR! ["0.1.3","0.1.4","0.2.0","0.2.1","0.2.2","0.2.3","0.2.4","1.0.0","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.1.5","1.2.0","1.2.1","1.2.2","1.2.3","1.2.4","2.0.0"] npm ERR! at installTargetsError (/usr/local/lib/node_modules/npm/lib/cache.js:685:10) npm ERR! at /usr/local/lib/node_modules/npm/lib/cache.js:607:10 npm ERR! at saved (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/get.js:138:7) npm ERR! at Object.oncomplete (fs.js:107:15) npm ERR! If you need help, you may report this log at: npm ERR! <http://github.com/isaacs/npm/issues> npm […]

如何用ValgrindtestingNode C ++附件?

在运行valgrind node ,Node似乎放弃了一个与系统调用有关的错误。 我在macOS Sierra,Node v8.2.1上。 $ valgrind `which node` test-pass.js ==17115== Memcheck, a memory error detector ==17115== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==17115== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==17115== Command: /Users/junon/n/bin/node test-pass.js ==17115== ==17115== Syscall param msg->desc.port.name points to uninitialised byte(s) ==17115== at […]

仅在mongoDB Node JS上存在集合时才显示给客户端

我有这个在Mongoose上定义的模式模型: var mongoose = require("mongoose"); var IngredientSchema = new mongoose.Schema({ name:String, number:Number, exist:Boolean, photoName:String }) module.exports = mongoose.model("Ingredient", IngredientSchema); 而且我想在网页上显示不同的结果,这取决于数据库中是否已经创build了一个成分。 这是我到目前为止(但它不起作用): <!– Check if inventory is empty or not, and display accordingly –> <% if ( ! ingredients) { %> <p>Add you first ingredient to the inventory !!</p> <% } else { %> <% ingredients.forEach(function(ingredient) […]

如何通过查询保留前N个文档并删除mongoDB中的所有其他文档?

我试图find一个最佳的方式来删除查找查询返回的顶部N以外的所有文档。 我们目前正在做的是得到所有的文档IDsorting和跳过N.然后发射删除查询为{id: {$in: idsList}} 。 1. model.find(findQuery).sort({_id:-1}).skip(N) -> collecting all ids from this query(idsList) 2. model.remove({_id:{'$in':idsList}}) 有没有办法使用单个查询以最佳方式做到这一点?

如何限制我的restapi只能使用node.js的引用URL?

我在nodejs中有一个restAPI,并会限制只从特定的URL访问? 我的node.js代码: var express=require("express"); var app=express(); var auth = require('basic-auth'); appStart.use(function(req, res, next) { console.log(req.get('origin')); console.log(requestIp.getClientIp(req)); console.log(req.ip); //check the api key username e password var authentication=auth(req); if(authentication.name!="apiTokenUsername" || authentication.pass!="apiTokenPassword") res.status(400).send("Api key Username or password incorrect!"); //check if the ip of request is authorized if(req.ip=="xxx.xxx.xxx.xxx") return next(); //check if the origin of request is authorized if(req.get('origin') […]

Feathersjs VS Senecajs

我一直在玩塞内加微服务和feathersjs。 两者都有一些相似之处。 我尝试了塞内卡和羽毛的例子。 羽毛几乎没有优势 简单而漂亮的CLI生成器 钩 很好的文档。 缺点是它与Express相结合。 它应该像塞内卡一样独立。 下面是使用Seneca的简单例子的代码。 它运行在不同的端口,似乎所有的服务是相互独立的。 塞内卡更像独立。 我还在git Ramanujan上find了一个惊人的存储库。 我想知道两者的优缺点。 比较两者是非常糟糕的,但我的目标是使用其中之一来制作API。 所以我很困惑select哪一个。 server.js seneca.add({cmd: 'config'}, function (msg, done) { var config = {rate: 0.23} var value = config[msg.prop] done(null, {value: value}) }) // local rates seneca.add({cmd: 'salestax', country: 'US'}, function (msg, done) { var state = { 'NY': 0.04, 'CA': […]