Tag: node.js

Node.js / Mongoose:发送信息到一个函数,并识别信息来操作

我有一个应用程序,它向3个不同的API REST服务器发出请求,收集并处理收到的对象信息,并使用mongoose的模型发送信息不同的Mongo集合(每个API REST一个)。 我的目标是在发送到MongoDB之前或同时(或之后)对不同的信息集进行操作。 下面是一个包含两个具体对象的例子,它们被检索并发送到数据库: Object1: { "name": "X", "a": 10, "b": 9, "n": 1502642712481, "iname": "ix", "_id": "59907f34040eb562d8d11d8c" } 对象2: { "name": "Y", "n": 1502642712552, "iname": "ix", "_id": "59907f34040eb562d8d11d8d", "b": "10", "a": "9", } 这些都有自己的模型,并正确插入到MongoDB保存,我想比较每个对象的“a”和“b”键(FYI: "iname"是一个共同的关键对象和"n"是在请求被返回时创build的时间戳)。 我想对'a'和'b'做的操作types是相对基础的math(目前): ax – ay和bx -by 任何想法,我怎么能做到这一点? 现在将每个对象保存到数据库的代码嵌套在一个无限循环中,如下所示: async function loopY() { setTimeout( async function () { var list […]

是否有可能在JavaScript中代理扩展类

我试图代理一个节点模块内的inheritance结构,并允许客户端实例化一个新的A类。当前当试图访问B类的父方法,我得到一个a.parentMethod is not a function handler.js -> module.exports = { get(target, key, receiver) { return target.getAttribute(key) }, set(target, key, value, receiver) { return target.setAttribute(key, value) } } A.js -> const handler = require('handler') class B { constructor(data) { this.data = data } parentMethod() { … do stuff } } class A extends B { constructor(data){ […]

Nodejs文件删除和错误:ENOENT:文件删除后没有这样的文件

我一直在争取这一段时间… 试图删除文件后,文件实际上被删除,但稍后会在大约30秒后出现此错误。 请帮忙 Error:ENOENT:no such file or directory,unlink'C:\ Users \ Adeoy3 \ IdeaProjects \ eym \ server \ audioFile \ Demand_and_Supply.mp3' 在错误(本机) 在Object.fs.unlinkSync(fs.js:1103:18) 在module.exports.deleteFile(C:\ Users \ Adeoy3 \ IdeaProjects \ eym \ server \ controllers \ audio-controller.js:187:8) (作为handle_request](C:\ Users \ Adeoy3 \ node_modules \ express \ lib \ router \ layer.js:95:5) (C:\ Users \ Adeoy3 […]

不是来自webpack的内容是从/ dist提供的

webpack.config.js var HtmlWebpackPlugin = require('html-webpack-plugin'); const path = require('path'); module.exports = { entry:'./src/app.js', output:{ path:path.join(__dirname, 'dist'), filename:'app.bundle.js', publicPath:'/dist/' }, , devServer: { contentBase: path.join(__dirname, "dist"), compress: true, stats: "errors-only", openPage: '', port:9000, open:true }, plugins: [new HtmlWebpackPlugin({ title:'Forum', filename:'index.html' //template:'./src/app.html' })] } 我的项目结构: ├── forum │ └── dist └── app.bundle.js ├── src │ ├── app.html […]

如何添加一个Spring Boot项目的Node模块?

我正在用Spring后端和React前端创build一个Web应用程序。 它的configuration基于这个最小的Spring Boot / React项目 。 现在我想在这个项目中使用react-checkbox-tree组件。 我该怎么做? 我尝试了两个不同的东西。 尝试1 在pom.xml文件中,使用以下声明包含React模块: <dependency> <groupId>org.webjars.npm</groupId> <artifactId>react</artifactId> <version>15.6.1</version> </dependency> 我试图find树组件的这种工件,但不能。 Attemp 2 我尝试将树组件安装为全局模块( npm install -g react-checkbox-tree )。 它没有帮助。 我得到错误 [INFO] ERROR in ./src/main/js/app.js [INFO] Module not found: Error: Cannot resolve module 'react-checkbox-tree' in C:\myproject\src\main\js [INFO] @ ./src/main/js/app.js 5:25-55 在build立。 更新1(13.08.2017 23:57): 在WebJars主页上,我find了关于如何将Node模块打包为WebJar的教程(以便它可以像正常的Maven依赖项一样集成到Spring Boot项目中)。 我开始为react-checkbox-tree创buildWebJar项目。 你可以在这里find源代码。 目前的问题是在本教程的pom.xml中提到的UPSTREAM_ZIP_URL : […]

创build – 反应 – 应用程序npm运行构build太慢

我对使用React相对来说比较新,并且正在学习create-react-app教程。 我正在Node环境中使用socket.io,React和Express创build一个简单的networking聊天服务。 我已经写完React应用程序的大部分function,现在正在服务器端通过Socket.io连接应用程序。 在前端工作是因为我可以运行“npm start”服务我的应用程序的开发版本。 但是,现在我在服务器端工作,实现Socket.io,每当我在前端发现问题时,我必须重新运行“npm run build”,每次需要15-30秒。 我确信有一个更快的方法来debugging这样的问题,而不必每次都编译我的反应的应用程序到静态文件。 请指教。

PostgreSQL 9.6.1数据库不显示在Heroku应用程序

我在Herokutesting应用程序中configuration了一个PostgreSQL数据库。 导航到URL / db不显示testing数据库,返回错误不能GET / db 。 Papertrail日志条目: https://papertrailapp.com/systems/glacial-bayou-96122/events?focus=833501717949202435&selected=833501717949202435 我已经包括了我提供数据库的步骤,并在下面列出了相关的代码。 我已经更新了我的package.json文件来添加pg npm module { "name": "node-js-getting-started", "version": "0.2.6", "description": "A sample Node.js app using Express 4", "engines": { "node": "6.11.1" }, "main": "index.js", "scripts": { "start": "node index.js", "test": "node test.js" }, "dependencies": { "ejs": "2.5.6", "express": "4.15.2" }, "dependencies": { "pg": "6.x", "ejs": "2.5.6", […]

Node.js Socket.io聊天示例不起作用

我刚刚开始与node.js,我在我的主机上安装节点,添加一些插件,我下载socket.io示例聊天 https://github.com/socketio/chat-example.git 当我运行它(节点index.js)我听到控制台上“聆听*:3000”的警报,它看起来像一切都会工作,但是当我到我的网站上端口3000(coracko.com:3000)聊天是可见的但消息不发送,也没有发生。 var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); var port = process.env.PORT || 3000; app.get('/', function(req, res){ res.sendFile(__dirname + '/index.html'); }); io.on('connection', function(socket){ socket.on('chat message', function(msg){ io.emit('chat message', msg); }); }); http.listen(port, function(){ console.log('listening on *:' + port); }); <!doctype html> <html> <head> <title>Socket.IO chat</title> <style> * { […]

试图使用nodemailer使用Gmail发送电子邮件,并收到错误:“无法为用户创build新的访问令牌”

我目前有一个设置,使用gmamail中的nodemailer发送邮件。 当我手动创build一个访问令牌(它只持续〜1小时)时,它工作正常。 但是,过了一小时后,我得到了下面的错误。 请注意,在那个小时内,我能够发送电子邮件就好,一切正常。 { Error: Can't create new access token for user at XOAuth2.generateToken (C:\Users\user\My-Projects\***\node_modules\nodemailer\lib\xoauth2\index.js:162:33) at XOAuth2.getToken (C:\Users\user\My-Projects\***\node_modules\nodemailer\lib\xoauth2\index.js:111:18) at SMTPConnection._handleXOauth2Token (C:\Users\user\My-Projects\***\node_modules\nodemailer\lib\smtp-connection\index.js:1421:27) at Immediate.setImmediate (C:\Users\user\My-Projects\***\node_modules\nodemailer\lib\smtp-connection\index.js:1239:45) at runCallback (timers.js:666:20) at tryOnImmediate (timers.js:639:5) at processImmediate [as _immediateCallback] (timers.js:611:5) code: 'EAUTH', command: 'AUTH XOAUTH2' } 我用来发送电子邮件的代码是: var emailMsg = `Name: ${name}\nEmail: ${email}\n\nMessage:\n${msg}`; var transporter = nodemailer.createTransport({ service: 'gmail', […]

如何连接到“主机:端口”,但没有使用浏览器,只是节点JS / Javascript?

为了与服务器(使用节点js创build)保持一致,我们打开浏览器并打开一些类似于以下代码的文件: <script src="http://127.0.0.1:8080/socket.io/socket.io.js"></script> <script type="text/javascript">/*<![CDATA[*/ var socket = io.connect('http://127.0.0.1:8080'); // Send messages to server: function envioas(){ socket.emit('operepues', 'envio'); } // Listen messages from server: socket.on('rdsdo', function(data){ document.getElementById('msj').innerHTML = data }); /*]]>*/</script> <div id="msj"></div> 但请,只需要从服务器的file.js创build这个连接! 我需要听服务器的消息,并发送消息到端口8080服务器从其他server.js端口666或任何其他… 我尝试着: …code JS… io = require('socket.io'); socket2 = 'http://127.0.0.1:8080'; var socket2 = io.connect(socket2); socket.emit('send_to_emit', typeof(socket2)); …code JS… 而且EVER'send_to_emit'是“未定义的”。 我需要连接从file_server01.js(服务器01中的文件JS / […]