
Nodejs,Express,路由
我已经使用express构建了一个api。在我的路线文件我有:Nodejs,Express,路由app.route('/getBalances') .post(api.getBalances); api.getBalances,取决于参数通过邮局发送称为“车辆”获得第一它是正确的控制器加载并调用其getBalances方法,例如:var controller = commonModel.getController(query.vehicle.toLowerCase()); controller.g...
2024-01-10
Express.js响应超时
我一直在寻找Express.js的请求/响应超时,但是一切似乎都与连接有关,而不是请求/响应本身。如果请求花费很长时间,则应该超时。显然,这不应该发生,但即使是一个简单的错误,如具有不调用回调或不调用的路由处理程序res.send(),浏览器将永远等待答复。空路由处理程序就是一个很好的例子。ap...
2024-01-10
什么是Express.js?
我是Node.js的学习者。什么是Express.js?Node.js的目的是什么?为什么我们实际上需要Express.js?与Node.js一起使用对我们有用吗?什么是Redis?Express.js附带吗?回答:这过于简化了,但是Express.js对Node.js来说就像RubyonRails或Sinatra对Ruby一样。Express3.x是一种轻量级的Web应用程序框架,可帮助您将Web应用...
2024-01-10
在express.js上启用HTTPS
我正在尝试让HTTPS在node.express.js上工作,但我无法弄清楚。这是我的app.js代码。var express = require('express');var fs = require('fs');var privateKey = fs.readFileSync('sslcert/server.key');var certificate = fs.readFileSync('sslcert/server.crt');var credentials = {key: privateKey, c...
2024-01-10
Express CSRF令牌验证
我在CSRF令牌方面遇到问题。当我提交表单时,XSRF-TOKEN正在生成一个新的表单,但是我想我正在生成两个不同的令牌,这有点困惑。还有一个名为的令牌_csrf,因此我在开发人员工具中看到了两个不同的cookie(XSRF-TOKEN和_csrf),_csrf发布后它们没有变化。我想要做的是为每个帖子请求生成一个新令牌,...
2024-01-10
修改Express.js请求对象
在express.js中,我想在请求对象上为我的每个URI侦听器提供一个附加属性。这将提供协议,主机名和端口号。例如:app.get('/users/:id', function(req, res) { console.log(req.root); // https://12.34.56.78:1324/});我当然可以连接req.protocol,req.host,并以某种方式绕过我的每个URI侦听器的端口号(似乎是req对象中缺少的端口...
2024-01-10
express.js中路由器优先级的顺序
我想了解express.js中的顺序优先级。例如,下面的代码var routes = require('./routes/index');var users = require('./routes/users');var api = require('./routes/api');app.use('/api', api);app.use('/users', users);app.use('/:name', function(req, res, next) { console.log('from...
2024-01-10
如何挂载express.js子应用程序?
我有几个应用程序试图合并为一个“套件”:2个应用程序是独立的,一个只是一个身份验证层(使用FB Connect的Everyauth)。我想这样设置:/-(首页)应用列表/ auth-登录任何应用程序/ app1-需要通过/ auth登录才能访问/ app2-(相同)我曾考虑过让app1和app2保持独立,顶层是代理,但是我认为要在它们之...
2024-01-10
Node JS Express处理多个请求
我有一个nodejsexpress服务器获取端点,该端点依次调用其他耗时的API(例如大约2秒)。我已经通过回调调用了此函数,使得res.send作为回调的一部分被触发。res.send对象打包了一个对象,该对象将在执行这些耗时的API调用的结果之后创建。因此,仅当我从API调用中获得全部信息时,才能发送我的res.send。...
2024-01-10
使用Express渲染Base64 PNG
我的Node.js服务器的外观如下所示:app.get("/api/id/:w", function(req, res) { var data = getIcon(req.params.w);});这data是一个包含PNG图像的Base64表示形式的字符串。有什么方法可以将其发送给客户端,该客户端访问编码并显示为图像的路由(例如,可以在img标记中使用URL)?回答:是的,您可以对base64字符串进...
2024-01-10
处理Express异步中间件中的错误
我有一个asyncExpress中间件,因为我想在其中使用中间件await来清理我的代码。const express = require('express');const app = express();app.use(async(req, res, next) => { await authenticate(req); next();});app.get('/route', async(req, res) => { const result = await request('http:/...
2024-01-10
在重定向之前设置Express响应头
我正在实现一个站点登录名,该登录名采用电子邮件/密码组合,检索API令牌,并将其返回给用户以存储(加密)在localStorage中。目前,在成功发布到/login,该应用程序将用户重定向到索引页,附有作为查询条件,像这样的令牌:login.post('/', function(req, res) { ...checking password... Auth.getToken(user, functio...
2024-01-10
Express-从远程Web服务返回二进制数据
我尝试使用Express返回一些二进制数据。在示例中,它是PDF,但从理论上讲,它可以是任何类型的文件。但是暂时将重点放在pdf上。我写了这段代码:app.get('*', function (req, res) { getBinaryData(req.url, function (answer) { res.type('pdf'); res.end(new Buffer(answer, 'binary')); }, ...
2024-01-10
如何在express.js中限制上传文件的大小
我得到这个错误说error:request entity too large上传大约30MB的视频时,这是设置代码app.use(express.bodyParser({ uploadDir:'./Temp', maxFieldsSize:'2 * 1024 * 1024 * 1024 ',}));不确定如何设置maxFieldsSize属性,需要一些帮助!!!回答:Express使用连接中间件,您可以使用以下命令指定文件上传大小app.use(express.limit('4...
2024-01-10
在Express中访问原始POST数据
我正在尝试在Express中编写一个愚蠢的简单Hello World程序,该程序输出有关当前HTTP请求的一些基本数据。对于POST请求,我想查看原始POST正文。const express = require('express');const app = express();function handleRequest(req, res) { console.log('\n-- INCOMING REQUEST AT ' + new Date().toISOString()); console...
2024-01-10
动态数据Express.JS的缓存控制
如何在JSON响应上的 策略? *我的JSON响应完全没有变化,因此我想积极地对其进行缓存。我找到了如何在静态文件上进行缓存,但是找不到如何在动态数据上进行缓存。回答:优雅的方法是res.set()在任何JSON输出之前简单地添加一个调用。在这里,您可以指定设置缓存控制标头,它将相应地进行缓存...
2024-01-10
如何在Express中获取URL参数?
我在tagid从URL:获取值方面遇到问题localhost:8888/p?tagid=1234。帮助我更正我的控制器代码。我无法获得tagid价值。我的代码如下:app.js:var express = require('express'), http = require('http'), path = require('path');var app = express();var controller = require('./controller')({ app: app});// all en...
2024-01-10
NPM安装给安装Express带来错误
当我给出命令时,npm install express它引发以下错误。在Ubuntu机器上gaurav@gaurav-Mini-Monster:~/TestScripts$ sudo npm install -g expressnpm ERR! error installing express@3.3.3 Error: Unsupportednpm ERR! error installing express@3.3.3 at checkEngine (/usr/local/lib/node_modu...
2024-01-10
如何在Express中获取完整的URL?
假设我的示例网址是http://example.com/one/two我说我有以下路线app.get('/one/two', function (req, res) { var url = req.url;}值url将是/one/two。如何在Express中获取 ?例如,在上述情况下,我想收到http://example.com/one/two。回答:该协议可从下载req.protocol。这里的文档在express 3.0之前,http除非您看到req.get('X-Forwar...
2024-01-10
在Express中使用URL中的多个参数
我将Express与Node一起使用,并且我有一个要求用户可以将URL请求为:http://myhost/fruit/apple/red。这样的请求将返回JSON响应。上述调用之前的JSON数据如下:{ "fruit": { "apple": "foo" }}通过上述请求,响应JSON数据应为:{ "apple": "foo", "color": "red"}我已经配置了Express路由,如下所示:app.get('...
2024-01-10
在IIS Express上更改会话超时?
我想在使用IIS Express时测试会话超时问题,但我无法弄清楚如何修改会话状态设置,以便我可以更改Cookie设置的超时时间。这是一个可修改的设置?在IIS Express上更改会话超时?回答:尝试以下1.In Web应用程序的web.config文件中设置的sessionState超时类似下面(它以分钟为单位)<sessionState timeout="30" />2...
2024-01-10
使用Express获取Node.js中的URL内容
使用Express框架时,如何在Node中下载URL的内容?基本上,我需要完成Facebook身份验证流程,但是如果没有获取其OAuth令牌URL,就无法做到这一点。通常,在PHP中,我会使用Curl,但是Node等效项是什么?回答:var options = { host: 'www.google.com', port: 80, path: '/index.html'};http.get(options, function(res) { console.log(...
2024-01-10
使用Express在NodeJS上检测AJAX请求
我在Express上使用NodeJS。如何分辨普通浏览器请求和AJAX请求之间的区别?我知道我可以检查请求标头,但是Node /Exprsss是否公开此信息?回答:大多数框架将X-Requested-With标头设置XMLHttpRequest为,Express对此进行了测试:app.get('/path', function(req, res) { var isAjaxRequest = req.xhr; ...});...
2024-01-10
与NPM一起安装时找不到Express模块
当我尝试运行app.jsexpress创建的文件时,出现以下错误:$ node app.jsnode.js:134 throw e; // process.nextTick error, or 'error' event on first tick ^Error: Cannot find module 'express' at Function._resolveFilename (module.js:320:11)当我键入时,express --version我得到一个re...
2024-01-10
如何将参数传递给express.js中的嵌套控制器?
我有一个这样的路由器:如何将参数传递给express.js中的嵌套控制器?app.get('/rest/userList', (req, res) => { UserList.find({}, (err, users) => { if (err) res.send(err); res.json(users); }); }); 我想改变这样的:app.get('/rest/userList', getUsers); function getUsers(req, res) {...
2024-01-10
