jjzjj

ExpressJS

全部标签

node.js - 创建一个接受参数的 expressjs 中间件

我正在尝试创建一个可以接受参数的中间件。如何做到这一点?例子app.get('/hasToBeAdmin',HasRole('Admin'),function(req,res){})HasRole=function(role,req,res,next){if(role!=user.role){res.redirect('/NotInRole);}next();} 最佳答案 functionHasRole(role){returnfunction(req,res,next){if(role!==req.user.role)res.re

node.js - 创建一个接受参数的 expressjs 中间件

我正在尝试创建一个可以接受参数的中间件。如何做到这一点?例子app.get('/hasToBeAdmin',HasRole('Admin'),function(req,res){})HasRole=function(role,req,res,next){if(role!=user.role){res.redirect('/NotInRole);}next();} 最佳答案 functionHasRole(role){returnfunction(req,res,next){if(role!==req.user.role)res.re

javascript - ES6 类,传递函数作为参数来注册 expressjs 路由

此类用于扩展我的expressjs应用程序中的所有Controller:importresponsefrom'../utils/responseParser.js';constAPISLUG='/api/v1/';exportdefaultclassBaseController{constructor(name,app,model){this.model=model;this.app=app;this.name=name;console.log(model);this.register();}register(){this.app.get(APISLUG+this.name,this.

javascript - 通过 FastCGI 使用 ExpressJS 应用程序

刚开始处理NodeJS网络应用程序并有一个基本问题。因为我来自PHP领域,所以我知道PHP有一个built-inHTTPserver但实际上没有人使用它,我们使用nginx和史前项目Apache作为HTTP服务器,当我进入ExpressJS时,我发现所有示例都在谈论监听ExpressJS打开的HTTP服务器(当然是通过httpNodeJS模块)但是没有人谈论通过FastCGI(nginx->FastCGI(例如node-fastcgi)->我的ExpressJS应用程序)使用它,就像我以前使用PHP(nginx->PHP-fpm->我的PHPenv)一样,我想知道为什么?据我所知,No

express - 使用 expressjs + socket.io + redis + express-session 登录系统

我想构建一个登录聊天系统,并存储数据。我选择了expressjs+socket.io和redis来做这件事。网络上有很多资源,由于版本较旧,其中许多资源无法使用。下面是stackoverflow上的链接,这些链接没有解决我的问题。Link1Link2Link3我遇到了多个passportnpm包,这让我无法使用正确的包。passport-socketio-redis,passport.socketio,redis-sessions,passport护照套餐+谷歌加登录套餐passport-google-oauth,passport-google,passport-google-plus

node.js - 客户端也是 ExpressJS 应用程序时的 Cookie 处理

就我而言,要让服务器端应用程序知道哪些客户端正在与其通信,它会在客户端中保存一个带有sessionID的cookie。这确实是express-session一个流行的ExpressJSsession存储包在文档中所说的NoteSessiondataisnotsavedinthecookieitself,justthesessionID.Sessiondataisstoredserver-side.所以我相信我可以假设这也是Express用来在session中维护用户数据的策略。我做了其他事情:我使用Redis将session数据存储在我的ExpressJS服务器应用程序中。话虽如此,我

express - 跨多服务器集群跟踪 expressjs 中连接的客户端数量

我正在使用SSE并且需要跟踪集群中的事件连接数。在每个实例中我都可以做server.getConnections(function(err,count){if(err)throwerr;console.log(count);});使用此方法并使用Redis在集群中保持准确总数的最佳方法是什么? 最佳答案 不知道您设置的所有细节,我会按如下方式处理:假设您的所有集群实例都与同一个Redis实例通信,在Redis存储中设置一个名为connection_count的键:SETconnection_count0。在每个集群节点上处理serv

node.js - 使用expressjs/nodejs store session登录到redis

我正在使用express/nodejs存储登录到redis的session,代码如下:app.use(express.session({key:'myappname.sid',secret:"SomeSecret!!!",store:newRedisStore({host:'127.0.0.1',,port:6379,}),cookie:{maxAge:604800//oneweek}}));我通过以下方式检查登录状态:functionensureAuthenticated(req,res,next){if(req.isAuthenticated()){returnnext();}re

javascript - 遍历 Redis 表,并在 Nodejs 和 Expressjs 中获取相同的键

我使用相同的key将不同的数据保存在Redis的不同数据库中。例如,在这个脚本运行的任何时候,我在Redis的数据库0...100上都有键test_1和test_2。我想要做的是为每个数据库获取具有相同名称的key,并将数据保存到文件中。这是我尝试过的片段。constredis=require('redis');constclient=redis.createClient();constfs=require('fs');for(leti=1;i我也试过将其包装在async函数中,并将awaitclient.mget包装在异步函数中,但似乎没有任何效果。 最佳

html - 调用 ExpressJS 作为 HTML 页面的 Rest API

我正在创建带有按钮的网页,以使用通过ExpressJS、NodeJs构建的RestAPI从服务器加载数据。varexpress=require('express');varmysql=require('mysql');varapp=express();varserver=app.listen(3000,function(){ console.log("Expressisrunningonport3000");});app.get('/search',function(req,res){ varmysql=require('mysql'); varconnection=mysql.cre