Articles of 表示

cron与node-cron的作业不会在console.log中进行testing

我试图在我的node.js应用程序(一个只是为了这个工作)运行testingcron工作,但它不是console.log()应该是。 它应该每10秒console.log()但它不会。 这是我的目录/ app中除package.json文件和node_modules目录以外的唯一文件。 代码在这里: var express = require("express"), app = express(), bodyParser = require("body-parser"), mongoose = require("mongoose"), cron = require("node-cron"); mongoose.connect("mongodb://localhost/asset-management-v1"); // mongoose.connect("mongodb://localhost/yelp_camp_v10"); app.use(bodyParser.urlencoded({extended: true})); app.set("view engine", "ejs"); app.use(express.static(__dirname + "/public")); app.use(function(req, res, next){ res.locals.currentUser = req.user; next(); }); var task = cron.schedule('10 * * * *', function() { console.log('immediately started'); }, false); task.start(); […]

Node.js Express – 如何结合文件创build和sendFile

我知道我们可以像这样在nodeJs中创build一个新的文件: let writeStream = fs.createWriteStream(name); writeStream.write("f1,f2,f3"); writeStream.write("1,2,3"); writeStream.end(); 如果我们有一个文件的绝对path – 我们可以发送它作为一个回应: res.sendFile(name); 但是,我们如何结合这一点,就像我得到一个创build报告的发布请求一样,我做了一些查询,把结果放到一个csv文件中,然后发回相同的新创build的文件? 更新:我看到sendFile工作正常 – 但响应正在作为文本 – 我的问题更多是 – 如何从ajax请求触发csv下载 – 而不是表单提交。 是否有可能 – 因为这似乎是一个巨大的安全风险

在快速应用程序中使用Vue

我对构buildNode应用程序以及编写Vue是新手,但是我认为可以创build一个小程序来帮助我理解这两个问题。 这个想法很简单。 我试图创build一个可以在屏幕上显示的琐事游戏,用户可以使用手机来select主屏幕上出现的问题的答案。 正在使用Socket.io在服务器和客户端之间发送数据。 目前有两种路由: /和/host 。 连接到/host将生成一个唯一的ID(我将在响应中发送)并创build一个新的游戏实例,通过input主机屏幕上显示的ID来等待“玩家”join。 路线/ index.js exports.host = (req, res) => { let id = generateRandomNumber(1000, 9999); res.render("host", { type: "host", gameId: id }); }; exports.player = (req, res) => { res.render("player", { type: "player" }); }; function generateRandomNumber(min, max) { return Math.floor(Math.random() * (max – min + 1)) + min; […]

表示路由器没有调用get空的obj返回请求

我正在调用从angular度4获得请求。 我已经使用expressjs路由器。 我得到的电话不来我的路由器function。 如果我使用一个虚拟身份证,它工作正常。 这是我的前端代码 getOnlineUser(){ console.log('nline –') return new Promise((resolve, reject) => { this.http.get(this.url+'/chat/getonlineusers') .map(res => res.json()) .subscribe(res => { resolve(res); }, (err) => { reject(err); }); }); } 这里是我的expressjs路由器代码 router.get('/getonlineusers', function(req, res, next) { console.log('here it is—+=============———- ') // the above console not working OnlineUsers.find({}, function (err, Users) { console.log(Users) if (err) return […]

'错误:预计422“不可处理的实体”,得到200“OK”“node.js / express应用程序

我不断抛出下面的错误 : Error handling invalid query params: Error: expected 422 "Unprocessable Entity", got 200 "OK" 下面是我的完整/app.js 。 'use strict' var path = require('path'); var meal = require('./meals.js'); var express = require('express'); var router = express.Router(); var app = express(); module.exports = function(app) { app.get('/allMeals', meal.getAllMeals, END); app.get('/meals/:id', meal.getMealinfo, END, function(req, res, next) { meal.findById(req.params.id).exec() .then(function(xxx) […]

nodejs-无法获取从客户端发送的值

我正在创build一个Node服务器,它将执行长轮询并从MySql数据库读取数据,并通过WebSocket将其发送到连接到套接字的许多客户端。 我正在学习这个教程 它正在工作(它长时间轮询并将数据返回给客户端),但不是我所期望的。 在我的系统中,每个用户都有唯一的用户ID(主键字段)。 所以我试图通过这个userId到服务器,并返回属于一个用户的通知。 我的客户端代码是用纯JavaScript编写的,看起来像这样: <script> // create a new websocket var socket = io.connect('http://localhost:8000'); var params={ userId : 1 }; socket.emit('myotherevent', { user: params }); // on message received we print all the data inside the #container div socket.on('notification', function (data) { console.log(data); }); </script> 正如你所看到的,我试图通过userId,但我无法在服务器端获取。 这里是我提取它的代码部分。 // creating a new websocket to […]

使用JSBarCode创build条形码

我正在使用JSBarCode来尝试生成资产的条形码。 我需要能够创build一个静态条码然后我想我可以自己dynamic的部分。 我的代码到目前为止是从上面的链接中find的文档直接复制。 我会认为这个文档将给出一个工作的例子,以我的代码为基础。 也许我做错了代码,我有下面的代码,我已经做了NPM安装已经为jsbarcode和canvas。 服务器端代码: var JsBarcode = require('jsbarcode'); var Canvas = require("canvas"); var canvas = new Canvas(); JsBarcode(canvas, "Hello"); JsBarcode(".barcode").init(); HTML: <svg class="barcode" jsbarcode-format="upc" jsbarcode-value="123456789012" jsbarcode-textmargin="0" jsbarcode-fontoptions="bold"> </svg> 当我尝试运行我的节点应用程序时出现错误。 这是很长的,对我来说不是很有用,但希望你们中的一个人能理解它。 这里是: /home/ubuntu/workspace/asset-management/node_modules/jsbarcode/bin/help/getRenderProperties.js:84 var selector = document.querySelectorAll(string); ^ ReferenceError: document is not defined at querySelectedRenderProperties (/home/ubuntu/workspace/asset-management/node_modules/jsbarcode/bin/help/getRenderProperties.js:84:26) at getRenderProperties (/home/ubuntu/workspace/asset-management/node_modules/jsbarcode/bin/help/getRenderProperties.js:37:10) at JsBarcode (/home/ubuntu/workspace/asset-management/node_modules/jsbarcode/bin/JsBarcode.js:63:60) at Object.<anonymous> […]

从PHP的angular度来看节点

我是一个多年来一直在构buildPHP Web应用程序的Web开发人员,总是没有框架并使用MVCdevise。 终于到了我转移到Node的时候了。 由于懒惰,我忽略了学习节点,但是有JavaScript的经验,一切似乎伟大的工作,内置模块是伟大的,乍一看事情似乎快得多的节点与PHP,horray节点! 问题是,我无法find任何资源来学习“正确”的方式来使用MVC布局您的Web应用程序,而不使用Express / Koa / Hapi等框架。 我确定这些都是非常棒的框架,并节省了大量的时间,但为了加快速度,我认为从头开始构build是件好事。 路由:用PHPbuild立一个方法是使用__autoload()来dynamic加载控制器,这是一个好的方法来devise节点中的路由器,还是使用地图或以不同的方式路由到正确的控制器? 内容:在PHP中,您可以很容易地将视图文件打印出控制器传递的variables,甚至可以在html中运行代码。 我明白,这不是节点的方式,但只有人见过使用模板引擎或在教程中,只是有HTMLvariables,这当然在现实世界中不起作用。 在节点中,可以简单地通过加载静态HTML视图文件并replace{TAGS}来编写模板引擎,还是有理由使用更高级的模板引擎? TL; DR为什么使用简单网站的框架而不是手动编码几个基本组件? 我错过了什么吗? 谢谢!

什么时候发送到客户端的静态中间件文件,使用node.js

我有点新的节点,我试图了解req,res系统和中间件。 通过使用这个代码: app.use('/stylesheets', express.static('stylesheets')) app.get('/', function(req, res){ res.sendFile(__dirname + '/index.html'); }); 客户端请求页面时,是与index.html一起发送的外部css文档还是稍后客户端解释html文件时请求的? 希望它不是一个愚蠢的问题。

反应和表示不允许jsx的应用程序

我正在尝试学习如何使用快递制作networking应用程序,但是,我并不真正了解如何将数据发送到客户端,以及快递应该做什么。 我有一个印象,表示应该发送数据到客户端,然后客户端应该根据发送的数据显示UI。 现在我正在尝试使用reactDOMServer来显示一个反应组件,但是我遇到了一个jsx错误: res.send(ReactDOMServer.renderToString(<root />)) SyntaxError: Unexpected token < 我知道这篇文章,并试图安装babel的jsx,但它仍然给我这个错误。 这是我的app.js: const express = require("express") const React = require("react") const ReactDOMServer = require("react-dom/server"); const root = require("./public/root.js"); const app = express(); app.get("/", (req, res) => { res.send(ReactDOMServer.renderToString(<root />)) }) app.listen(3000, () => { console.log("running on port 3000") }) root.js const React = require("react"); module.export = […]