Articles of expression

加载并传递URL到div express.js

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script> $(document).ready(function(){ $("button").click(function(){ $("#div1").load("demo_test.txt"); }); }); </script> <div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div> <button>Get External Content</button> 以上是jquery方法,简单地加载并传入url到div。 但是我不想在express.js上使用这个前端方法。 我想使用中间件或function或方法(没有JQUERY)。 当button点击express.js时,如何加载并传递远程或外部链接到div?

从不同的路线访问Express会话是不确定的?

我试图实现无限滚动。 在我的第一条路线中,我从数据库中加载5个元素,并存储上次看到的项目的ID。 要加载更多的数据getNextHomeContent被调用,但由于某种原因req.session.lastseen未定义。 server.js var express = require('express'); var session = require('express-session'); var app = express(); var mongoose = require('mongoose'); var logger = require('morgan'); var bodyParser = require('body-parser'); var cors = require('cors'); //imports database configuration var databaseConfig = require('./config/database'); //defines route file to use var router = require('./app/routes'); //connect to datbase mongoose.connect(databaseConfig.url); app.listen(process.env.PORT || 8080); […]

如何在unit testing路由时将快速路由所调用的控制器进行存储

我正在尝试unit testing快速路由,如下所示: var app = express(); app.get('/',indexController.Index); 在我的unit testing中,我使用的代码如下: const indexController = {}; indexController.Index = sinon.stub(); const server = proxyquire('../server.js', { './controllers/indexController': indexController }); describe('GET /', () => { it('index controller should be called', (done) => { request(server) .get('/') .expect(200) .end((err, res) => { if (err) { return done(err); } sinon.assert.called(indexController.Index); return done(); }); }); […]

试图删除数字后面的字母F或C.

我试图find一个正则expression式(这将工作在node.js)去除华氏和摄氏字母,并从下面的天气预报string“度”取代他们。 “晴朗的天空,低46°F,北风以10至15英里的速度转向ENE。 我想要上面的string如下所示: “晴朗的天空,低46度,北风以10至15英里的速度转向ENE。” string中可能有多个温度的实例。 注:我只想删除F或C,如果它紧跟在一个数字之间没有空格。 如果“佛罗里达”在上面的string,我想要字母“F”保持不变。 我已经尝试了下面的正则expression式,但它发现整个46F。 我只是想把它改成46度。 /\d+[FC]/g 谢谢。

使用nodeJS提高发送静态图像的速度

我有一个典型的客户端/服务器应用程序,我可以发送图像到服务器,我需要不同大小的客户端上的图像。 所以目前我使用的Andr oid毕加索加载图像,并与nodeJS我服务的图像作为静态文件,因为他们被保存在静态文件所在的文件夹。 我的问题是:有没有办法提高发送这个静态文件(只是图像)的速度,或者我可以减less他们的大小使用我目前的静态文件的代码? app.use(express.static(path.join(__dirname, 'public'))); 目前我从客户端以base64的forms接收图像,并在服务器上将其转换为像这样的位图: var bitmap = new Buffer(req.body.base64,'base64'); 并将该位图存储在我用作静态文件夹的公用文件夹中,因为这是不好的做法,所以我不直接将图像存储在数据库中,我只是保存path,每次我想要检索静态文件夹内的图像在哪儿。 所以每次在我的客户端,我想回顾一下照片我只需要知道什么是静态path,没有更多。 为了更好的理解,我在这里留下了我的控制器的代码,我保存的照片。 调节器 sendPicture: function (req, res, next) { var plant = null if (req.params.id != 0) { plant = req.params.id; } var bitmap = new Buffer(req.body.base64, 'base64'); var lat = req.body.lat; var lon = req.body.lon; var alt = req.body.alt; var date […]

TypeError:无法读取未定义的属性'createTableIfNotExists'

我有一个knex的问题,并迁移我的表,所以我这样做 knex migrations:make users ,然后在我定义的迁移文件中: exports.up = function(knex, Promise) { return knex.shema.createTableIfNotExists('users', (table) => { table.increment(); table.string('username').unique().notNullable; table.string('password').notNullable(); table.boolean('admin').notNullable().defaultTo(false); table.timestamp('created_at').notNullable().defaultTo(knex.raw('now()')); }) }; exports.down = function(knex, Promise) { return knex.shema.dropTableIfExists('users'); }; 然后,我运行knex migrate:latest –env development ,我有这个错误: Using environment: development Knex:warning – migrations failed with error: Cannot read property 'createTableIfNotExists' of undefined TypeError: Cannot read property 'createTableIfNotExists' […]

如何为基于NFA的正则expression式“a * b * a +”工作

我在JS中写了一个简单的正则expression式parsing器,parsing器只支持“*”和“+”,然后我发现一个问题。 “aa”匹配/ a * b * a + /的结果是错误的。 这是我的过程。 首先,我用REstring新build一个NFA图。 如图所示,状态5有一个计数器,如果计数器> = 1,状态5将指向“_end”,graphics将被连接。 从状态0开始,执行DFS,logging每个访问节点。 匹配string,如果两者相等,则下一个状态的计数器+1,然后从下一个状态开始DFS。 当string结束时,检查被访问节点,如果状态为6,则返回true,否则返回false。 这是我的代码。 var Graph = require(__dirname + '/../Graph.js'); var DFS = require(__dirname + '/../DFS.js'); var NFA = module.exports = function(regexp) { var ops = new Array(); // stack this.re = regexp; this.M = this.re.length; this.G = new Graph(this.M + […]

Node.js服务器应用程序使用cors,express和google api在azure部署后不工作

我有一个node.js服务器api应用程序,部署到azure色后不工作。 它最初依靠google.api获取数据,之后将数据存储在数组中,并通过响应快速获取调用将其发送到客户端。 最初我用: const express = require('express'); const app = express(); const cors = require("cors"); const _ = require("lodash"); const port = 30000; app.use(cors()); 在localhost上运行得很好。 对于部署,遵循教程后,我将其更改为: const express = require('express'); const app = express(); const cors = require("cors"); const _ = require("lodash"); const port = process.env.PORT || 80; var http = require('http'); app.use(cors()); var server […]

我有一个套接字IO连接问题

我正在反应js和使用套接字和expression来build立一个多人游戏 我得到这个错误: polling-xhr.js:264 GET https:// localhost:3000 / socket.io /?EIO = 3&transport = polling&t = LqjOuC2 net :: ERR_CONNECTION_CLOSED 我谷歌这个错误5倍,并调整我的import应用程序,套接字,快递和http, Server.js var app = require('express')(); var http = require('http').Server(app); const port = process.env.PORT || 3001; http.listen(port, ()=> {console.log("+++Express Server with Socket Running!!!")}) var io = require('socket.io').listen(http); …. …. 前端 import React, { Component } from 'react'; […]

Angular 4节点Mssql

当谈到网站开发时,我是一个新手。 我目前正在努力实现一个实时的Web项目。 我有一个MS SQL服务器2014工作在我的工作场所,并已安装node.js /和使用快递生成器生成一个应用程序。 我已经使用mssql节点模块来连接和检索数据从mssql服务器,它的工作原理。虽然,在这一点上我感到困惑的事情: 如何将angular4添加到公式中以帮助进行前端开发?我已经完成了npm install –save anular / cli,但是不知道从哪里开始创buildinput窗体,其下拉列表的值是从DB 。 我的app.js: var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var index = require('./routes/index'); var users = require('./routes/users'); var app = express(); // view engine setup app.set('views', […]