Tag: javascript

在基于node.js的微服务之间共享代码?

假设我有一个微服务A和一个微服务(在Node.js上实现)B,这两个都依赖于包C. 当我释放我的应用程序(包括A,B和C)时,我想确保A和B都使用相同版本的C语言。我希望在开发过程中释放A或B时就是这种情况。 事实上,在Java和Maven中,有一个BOM(物料清单)的概念,例如可以解决这个问题。 Maven BOM [Bill Of Materials]依赖关系 有没有类似的解决schemenode.js?

如何在控制器文件中使用socket.io

我正在使用Node.JS Express和socket.io。 所以我的想法是直接从我的控制器的插入方法发出消息。 在我的server.js文件中,iam创buildsocket.io对象,并尝试使其可用于其他模块: 我的server.js是这样的 require('rootpath')(); var express = require('express'); var app = express(); var cors = require('cors'); var bodyParser = require('body-parser'); var expressJwt = require('express-jwt'); var config = require('config.json'); var mongoose = require('mongoose'); mongoose.connect(config.connectionString); var db = mongoose.connection; db.on('error',console.error.bind(console,'Connection error')); db.on('open',function(){ console.log('connected'); }); app.use(cors()); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); // use JWT auth to […]

构build自定义的开放层时出错:产生信息的麻烦:期望的JSON输出

我以这种方式构build自定义的OpenLayers: node tasks/build.js config/ol.json build/ol-full.js 并得到一个错误:“麻烦生成信息:预期的JSON输出”。 我发现这个错误发生在从build.js调用的generate-info.js中。 它在单独的线程中运行jsdoc(使用默认模板),并期望它将json格式的一些数据返回到stdout,但jsdoc退出而不返回任何数据。 这是来自generate-info.js的代码: var child = spawn(jsdoc, ['-c', jsdocConfig].concat(paths), {cwd: cwd}); child.stdout.on('data', function(data) { output += String(data); // this wasn't called! }); child.stderr.on('data', function(data) { errors += String(data); }); child.on('exit', function(code) { //some code if (!output) { throw new Error('Expected JSON output'); } }); 进一步的代码显示generate-info.js期望从jsdoc得到一个具有属性“symbols”和“definitions”的对象,这应该是数组。 我logging了参数,并独立于具有相同参数的控制台运行jsdoc,并且它什么也没有返回。 我查看了默认的jsdoc模板( templates / […]

导入库的问题

我最近遇到了一个interact.js,我想在我的一个项目中使用一个库,但是我不能让它工作。 我已经通过npm安装它 npm install interactjs –save 它显示在我的package.json依赖关系为 "dependencies": { "angular": "^1.6.4", "angular-ui-router": "^0.4.2", "interactjs": "^1.2.9" } 而且我还在main.js中导入了其他库和模块 import 'interactjs'; 该项目是在angularjs中,我已经在我的控制器中的一个函数内使用一些interact.js语法,但我得到以下错误: app.js:57837 Uncaught Error: Module parse failed: path\controller.js Unexpected token (207:48) You may need an appropriate loader to handle this file type. | drag() { | let drag = document.querySelector('.draggable'); | interact(drag).draggable({ inertia: true; }) | […]

如何从Hyper.sh容器中检索文件?

我们正在使用hyper.sh来testingJavaScript考试。 对hyper.sh API的调用会创build一个容器,该容器使用bash脚本来克隆提交,安装依赖关系以及将testing结果传输到/ tmp / student_results。 以前,我们在这个过程中使用了dockerode,并且能够调用getArchive作为提供给container.run()的callback的一部分。 Hyper.sh CLI不具备提供callback或获取文件档案的function。 我们可以将文件内容回显到标准输出,并从超级容器中检索日志,但是我们没有办法知道何时完成了这个过程。 超级CLI让你等待一个容器完成,但是API不。 我们目前针对这个问题的解决scheme是将文件的内容curl到应用程序中的webhook。 有更聪明的方法吗?

NodeJS / Javascript – 使用承诺来处理图像收集,然后保存汇总的结果

股票溢价 – 我试图用NodeJS处理图像集合(〜2000图像)。 我能够提取所需的信息,但我很难得到正确的时间,以便将结果保存到JSON文件。 接近尾声,你会看到 console.log(palette); // Push single image data to output array. output.push(palette); console.log工作正常,但是在将空的output数组写入data.json之后,似乎执行了push方法。 试过有一个嵌套的承诺,我不会写文件,直到所有的图像已被处理。 getPixels中的callback函数是asynchronous执行的。 输出数组的顺序是任意的。 任何和所有帮助非常感谢! 谢谢! // Extract color information from all images in imageDirectory var convert = require('color-convert'), fs = require('fs'), getPixels = require("get-pixels"), startTime = Date.now(); var processedImages = new Promise((resolve, reject) => { var imageDirectory = 'input', […]

如何防止使用我的代理环境variables的Splunk SDK for Javascript?

我不是100%确定的,但我相信splunk-sdk正在使用我的代理环境variables。 由于我们的应用程序代理工作受到限制,我无法从Node.js访问Splunk。 我想知道如何防止splunk-sdk使用应用程序代理。 var splunkjs = require('splunk-sdk'); var service = new splunkjs.Service({ username: process.env.SPLUNK_USER, password: process.env.SPLUNK_PW, scheme: 'https', host: 'my.splunk.server', port: '8089', autologin: true }); var search_term = 'somethingsomethingdarkside' var fields = 'field1,field2,field3'; var searchquery = `search index=* sourcetype=* ${search_term} | fields ${fields} | fields – _raw` var searchParams = { earliest_time: '-1h', latest_time: 'now', […]

Passport.js – 将数据发回到react / redux应用程序,同时在login后redirect

我正在创build一个React / Redux应用程序,并且是使用Node / Express和Passport身份validation设置后端的新手。 我想要发生的是用户login,凭据被检查,如果用户从数据库中find,redirect用户到下一页,并返回用户的信息,所以我可以更新减速机。 我的端点login工作,因为我能够访问req.user对象,并获得成功身份validation后正确的用户信息。 我被卡住的地方是将用户redirect到另一个页面,同时也传递该用户的信息,所以我可能会更新REDX存储。 编辑:所以我通过发送authentication后的用户信息更新响应以及下一个redirect用户的路线。 由于我使用的是redux,我执行login操作,一旦得到响应,我redirect用户window.location。 这部分解决了我的问题,即使我login后redirect,我相信,更新window.location后,我的redux商店得到刷新,我失去了我抓住服务器端的任何信息。 app.post('/api/login', passport.authenticate('local-login', { failureRedirect: '/login'}), (req, res) => { res.json({ redirect: '/profile userInfo: req.user.dataValues}) }) }) export const login = (email, password) => { return(dispatch) => { axios .post('/api/login', { email: email, password: password }) .then(resp => { dispatch({ type: 'LOGIN_USER', data: resp.data }) […]

发送json数据到电报bot节点js的问题?

我真的有这个奇怪的事情在我的代码。 所以,我从数据库获取数据,然后提取数据并将数据发送回机器人。 一切工作到目前为止,但这是真正的问题。 当从json数组发送数据时,我发现数据是按照随机顺序从数组中发送的,而不是像我所期望的那样顺序发送。 这可能是什么原因? 我如何解决它? case 'summary': var balance = ""; var transactionsummary = ""; var date = ""; flag = 0; trx.getsummary(senderid).then(function (v) { var obj = JSON.parse(v); if (obj.balance2 != '-1') { console.log("Entered"); balance = obj.balance2; transactionsummary = obj.transactionsummary; date = obj.date2; flag = flag + 1; } if (flag > 0) […]

npm:缺lessnode_modules中的传递依赖关系

我有两个本地npm项目, A和B 比方说, A依赖于react并将其列为package.json文件中的依赖项。 我使用npm link使A可用于B B依赖于A并react 。 我使用npm link A来使用npm link A的本地版本。 但是,据我所知, A已经依赖于react ,我不包括在我的package.json文件的react 。 当我打电话给npm install我希望npm在node_modules文件夹中包含传递依赖关系。 但是,我无法findreact ,只要不在B的package.json文件中包含传递依赖关系,我也不能在B的代码中使用它。 当我包含react等其他模块,我也得到像fbjs或encodingparsing到我的node_modules文件夹传递依赖node_modules 。 那么,错误在哪里? /为什么A的依赖关系不包含在B的node_modules文件夹中?