当前位置: 首页 > 知识库问答 >
问题:

当路由在单独的模块中时,如何使用Node Mongo进行连池?[复制]

连志义
2023-03-14

Mongo文档展示了在同一模块中定义MongoClient和server时如何设置连接池:

var express = require('express');
var mongodb = require('mongodb');
var app = express();

var MongoClient = require('mongodb').MongoClient;
var db;

// Initialize connection once
MongoClient.connect("mongodb://localhost:27017/integration_test", function(err, database) {
  if(err) throw err;

  db = database;

  // Start the application after the database connection is ready
  app.listen(3000);
  console.log("Listening on port 3000");
});

// Reuse database object in request handlers
app.get("/", function(req, res) {
  db.collection("replicaset_mongo_client_collection").find({}, function(err, docs) {
    docs.each(function(err, doc) {
      if(doc) {
        console.log(doc);
      }
      else {
        res.end();
      }
    });
  });
});

比如说,当你有一个应用程序时,这是如何工作的。js设置服务器和api。定义路线的js

共有1个答案

柯清野
2023-03-14

一个简单的解决方案是在应用程序中编写一些简单的中间件。js通过请求变量将其传递给routes。

app.use(function(req, res, next) {
    req.db = db;
    next();
});

当然,您的所有路线都可以访问reqres,因此他们可以通过req访问。db

 类似资料:
  • 问题内容: 我想将Node-mssql用作Node JS Express 4 Web应用程序中的MSSQL数据库连接器。路由处理程序逻辑在单独的文件中处理。 如何创建单个/全局连接池,并在处理路由逻辑的多个文件中使用它?我不想在每个路由处理程序功能/文件中建立新的连接池。 问题答案: 自问和回答问题以来已经三年了。从那以后,一些事情发生了变化。这是我今天建议的基于ES6,mssql 4和Expre

  • 我试图为单个模块做assembleRelease。我已经将这个Gradle只构建了一个模块,其中的方法是在终端上放置(在这种情况下是assembleRelease)。我需要知道我做得是否正确,因为它应该生成一个apk,但我得到的却是一个文档。

  • 在 Macaron 中, 路由是一个 HTTP 方法配对一个 URL 匹配模型. 每一个路由可以对应一个或多个处理器方法: m.Get("/", func() { // show something }) m.Patch("/", func() { // update something }) m.Post("/", func() { // create something

  • 我有以下代码: 我编译此文件时出错: 但是,删除内部模块并编译它本身包含的代码运行良好: 我错过了什么?如果模块位于单独的文件中,我会收到相同的错误: main.rs a.rs

  • 本文向大家介绍如何在iOS上使用MVVM进行路由详解,包括了如何在iOS上使用MVVM进行路由详解的使用技巧和注意事项,需要的朋友参考一下 前言 我已经在几个项目中使用MVVM了一段时间,我真的很喜欢它的简单性。特别是,如果你像许多人一样从MVC迁移,你只需要在你的架构中增加一层ViewModel。如果您发现太多层级造成的复杂,这确实使事情变得更容易。 这是一个良好的开端,但这种简单并不总是好的。

  • 在node的上下文中,我无法理解ES6模块。js。 假设我有一个简单的节点应用程序。它基于iisnode示例,但我在顶部添加了一个。 你好js: 这将导致在模块之外使用导入语句 但是如果我改名为hello。你好。mjs我收到以下错误: 对我来说似乎是个陷阱,有什么出路? (iisnode版本为0.2.26,节点版本为v13.8.0)