问题标签 [express-4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - Express 4 + pm2 手表不工作
我正在用这个运行 pm2:
问题是当我在根文件夹中更新 app.js 时,它似乎不是自动重启节点。有任何想法吗?
node.js - 如何在没有“DEBUG=node:* ./bin/www”的情况下使用 Express 4 运行应用程序
我正在学习 Node.js + Express 4 和运行我的应用程序的命令如下所示:
$>DEBUG=节点:* ./bin/www
这个命令是做什么的?
我怎样才能像这样运行我的应用程序:
$>节点app.js
PS:我需要在phpStrom下运行,不能在配置第一命令中设置。
node.js - Node Express Busboy 文件和字段上传
当使用带有 express 的 Busboy 处理图像上传时,我可以像这样获取 multipart/form-data 帖子的字段和文件:
我想知道的是,假设有一个实例在我开始处理文件之前我想知道字段是什么。在我的实验中,似乎每次都首先获得这些字段。有谁知道这是否保证总是如此?
node.js - 正确的nodejs+express app for API的模块化结构
我正在尝试使用 Express 4 为 API 做 nodejs 应用程序。但是当我使应用程序更加模块化时,我的路由不起作用。谁能解释一下我的错误是什么以及 API 应用程序的正确结构应该是什么?
我的 app.js 文件(一些不必要的代码被剪掉了):
我的路线/v1/index.js 文件:
我的路线/v1/user.js 文件:
当我尝试请求这样的网址时:http://localhost:3000/api/v1/user
我只在控制台中看到消息:“请求 API 版本” - 所以 index.js 或 user.js 中没有触发任何代码,
但是,如果我删除 user.js 并将对索引 js 的请求处理(在本例中位于 index.js 中的 user.js 中的 router.route('...')) - 一切正常,我看到消息取决于 VERB 和没有“请求 API 版本”消息。
所以我的问题是:为什么会这样?如果我从 index.js 连接它,为什么不包含 user.js 并且不起作用,在这种情况下我将如何制作模块化应用程序?将所有处理放在 index.js 中 - 不好,因为我需要 /user、/news、/comment 等处理,我想这些处理将在单独的文件中处理。
node.js - Express 4 从应用程序堆栈中动态删除中间件
我是节点的新手,我正在尝试在 Express 4 中“即时”添加和删除路线。我正在使用 app.use(path,route) 添加它们,并且我能够在应用程序中找到它们._router.stack 数组,但我无法删除特定的路由器。可能吗?我试过 app._router.stack.splice(myRouterIndex,1) 没有成功。
这是我的例子:
第二个 console.log(app._router.stack) 打印与第一个完全相同。
node.js - 简单错误:Express 3 -> 4. 移动控制器并请求索引“Route.get() 需要回调函数,但得到了 [object Undefined]”
嗨,我见过类似的错误,但没有一个适用于这种情况。我正在阅读 Getting Mean 这本书,但将 Express 3 上的所有课程应用到 Express 4 应用程序中。
在 app.js 中
在路线/index.js
在 app_server/controllers/main.js
运行应用程序会在 res.render('index', { title: 'Loc8r' }); 上产生“错误:Route.get() 需要回调函数但得到 [object Undefined]” 线。
一直在这几个小时。非常感谢您的帮助。
node.js - 如何使用 Socket.IO 最好地构建 Express V4.11+ 项目?
我使用了最新版本的express-generator ( link ) 来生成样板Express 4.11.2项目。
我试图找出设置Socket.IO 1.3.3的最佳方法,其中更改了 Express 框架中的几个主要版本,其中 http 服务器被移动到自己的bin/www
文件中。
我很困惑,因为在app.js
导出到bin/www
.
我已经用谷歌搜索了几个小时,但什么都没有,似乎 Express 框架发展得如此之快,以至于之前的所有文章都已过时。
任何帮助将不胜感激!
我在下面包含了有问题的两个文件,因此您可以在生成样板文件 express 项目后看到我正在使用的内容。
斌/万维网
应用程序.js
express - 如何在 express.js 4.x 中访问中间件内部的参数?
我想修改中间件中的路由参数:
我如何在中间件中做到这一点?在中间件执行期间似乎尚未解析参数...
node.js - ExpressJS 4 在 res.send() 之后执行函数
我是 nodeJS 和异步编程的新手。我使用 express 作为我的应用程序的基础,实际上只有一个路由提供页面并接受来自表单的上传。上传文件后,我想向外部服务发出 POST 请求。尝试在 res.send(200) 之后执行任何代码但是会导致错误消息Error: Can't set headers after they are sent.
我正在使用请求包将帖子发布到外部服务。
postFile 函数本身可以正常工作,甚至在 res.send 之后直接添加 console.log 也会导致相同的错误。响应发送到客户端后,如何继续在服务器上执行代码?
从节点输出日志:
POST /uploads 200 85.201 ms - 23
Error: Can't set headers after they are sent.
at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:335:11)
at ServerResponse.header (/Users/jason/dev/test/file-share/node_modules/express/lib/response.js:700:10)
at ServerResponse.send (/Users/jason/dev/test/file-share/node_modules/express/lib/response.js:154:12)
at fn (/Users/jason/dev/test/file-share/node_modules/express/lib/response.js:934:10)
at View.exports.renderFile [as engine] (/Users/jason/dev/test/file-share/node_modules/jade/lib/index.js:374:12)
at View.render (/Users/jason/dev/test/file-share/node_modules/express/lib/view.js:93:8)
at EventEmitter.app.render (/Users/jason/dev/test/file-share/node_modules/express/lib/application.js:566:10)
at ServerResponse.res.render (/Users/jason/dev/test/file-share/node_modules/express/lib/response.js:938:7)
at /Users/jason/dev/test/file-share/app.js:58:7
at Layer.handle_error (/Users/jason/dev/test/file-share/node_modules/express/lib/router/layer.js:58:5)
javascript - 无法在 Express 4 中通过请求发送 cookie
这是我的初始配置:
然后在我的控制器中(它通过一个死的简单路由器路由到一个控制器,然后根据类似 Rails 的命名约定呈现适当的操作)我会做这样的事情:
请注意,这this.services.render.view
只是一项服务,因此我不必编写res.render('./app/controllers' + controller + '/' + action)
注意控制器中的 res.cookie 行(express.js 上的文档)。这就是官方文档所说的,事实上,它是在浏览器中设置的:
但是, res.cookie 上面的行是一个日志,我想我们会test_cookie
在其中包含,但是:
我每次得到的只是一个标准的空白cookie,即使它是在浏览器端设置的并且据说是发送的。
我的问题是:如何在 Express 4 中正确设置和接收 cookie?