jjzjj

expressjs

全部标签

node.js - 是否可以禁用/删除 ExpressJS 中特定路由的中间件?

我想禁用我之前在app.js中设置的特定中间件,例如:app.use(express.bodyParser());然后我想为特定路由删除该bodyParser():app.post("/posts/add",Post.addPost);谢谢 最佳答案 您可以编写一个函数来检测条件,如下所示:functionmaybe(fn){returnfunction(req,res,next){if(req.path==='/posts/add'&&req.method==='POST'){next();}else{fn(req,res,nex

node.js - 如何在 Expressjs 中进行 Web 服务调用?

app.get('/',function(req,res){varoptions={host:'www.google.com'};http.get(options,function(http_res){http_res.on('data',function(chunk){res.send('BODY:'+chunk);});res.end("");});});我正在尝试下载google.com主页并重新打印,但我收到“发送后无法使用可变headerAPI”。错误有人知道为什么吗?或者如何进行http调用? 最佳答案 查看示例here

javascript - nodejs ExpressJS 路由仅适用于索引

我在expressjs的单独文件夹中有路由。该设置适用于“索引”页面,但不适用于任何其他路线。这是我的index.js,在我的路由文件夹中。module.exports=function(db){return{index:function(req,res,next){res.send('index');}}}这是我的join.js,在我的路由文件夹中。module.exports=function(db){return{join:function(req,res,next){res.send('join');}}}在我的app.js中,我这样定义路由:varroutes=require

javascript - pdfkit (Expressjs-Nodejs) 中的 HTML 表格

我正在使用pdfkit生成PDF文件,我想将此PDF文件发送到浏览器。我的以下代码运行良好,我得到了一份带有文本的pdf。实际上以下代码是在Node.js中使用pdfkit生成PDF的示例,但现在我想创建html表。最新代码varPDFDocument=require("pdfkit");varfs=require("fs");doc=newPDFDocument();doc.pipe(fs.createWriteStream("out.pdf"));doc.moveTo(300,75).lineTo(373,301).lineTo(181,161).lineTo(419,161).l

javascript - Expressjs 服务器地址主机不返回任何内容

按照标准的ExpressJshelloword示例,我得到了大量的'::'。为什么会这样?你好词示例:varserver=app.listen(3000,function(){varhost=server.address().address;varport=server.address().port;console.log('Exampleapplisteningathttp://%s:%s',host,port);});我发现了一个在端口参数后添加“localhost”的提示。当我只看我的电脑时它解决了,但它无法通过网络工作。我应该怎么办? 最佳答案

javascript - Expressjs 安全 session cookie

我似乎找不到在expressjs框架中设置安全cookie的方法。有没有选择在某处执行此操作? 最佳答案 如果您使用代理,您还必须确保它正在发送X-Forwarded-Protoheader并且您设置了代理选项:app.use(express.session({proxy:true,secret:'test',cookie:{secure:true}}));或者,您可以告诉Express全局信任代理:app.set('trustproxy',1) 关于javascript-Express

node.js - Handlebars 和 ExpressJS 的多种布局?

如果我在Express4中使用Handlebars作为模板引擎,似乎只能选择指定一个布局模板用于所有View:app.engine('hbs',expressHbs({extname:'hbs',defaultLayout:'layout.hbs'}));如果您的应用需要多个布局怎么办?如果viewA.hbs使用一种布局而viewB.hbs需要不同的布局怎么办?在学习nodejs时,我来自PHPLaravel背景,其中Bladetemplatingengine您是否在每个View文件的顶部指定要使用的布局。它使得在任何给定View的布局模板之间切换变得非常简单。

node.js - req.session.passport 为空,未调用 deserializeUser - ExpressJS,Passport

我在Passport/ExpressJS中使用session时遇到问题。当我登录req.session时,我可以看到Passport是{}:{cookie:{path:'/',_expires:MonSep29201419:37:16GMT-0300(BRT),originalMaxAge:3594522,httpOnly:true,secure:true},passport:{}}另外,我正在使用Facebook进行身份验证,并且没有调用passport.deserializeUser。这是我的代码:passport.use(newFacebookStrategy({//pullin

node.js - node_modules 中 ExpressJS 的脚本路径

我的“views”文件夹中有一个index.jade。doctypehtmlhtmlheadtitle=titlelink(rel='stylesheet',href='/stylesheets/main.css')script(src='../node_modules/some_package/package_script.min.js')我的路由文件夹中有index.js和路由器:router.get('/',function(req,res){res.render('index',{title:'titlegoeshere'})});当我尝试访问控制台中的Jade文件中的node

javascript - ExpressJS 将变量传递给 JavaScript

我对此完全迷失了;我正在使用NodeJS获取JSON,我需要将变量传递到我的页面并让JavaScript使用数据。app.get('/test',function(req,res){res.render('testPage',{myVar:'MyData'});这是我的Express代码(非常简单,用于测试目的);现在使用JADE我想收集我知道要在页面上呈现的数据很简单p=myVar但我需要能够在JavaScript中收集这些数据(如果可能在.js文件中),但现在只是在我尝试过的警报框中显示变量alert(#{myVar})如果有人能提供帮助,还有许多其他人非常感谢