有没有办法在 REST API 中访问快递的应用程序?
Is there a way I can access the express's Application in a REST API?
看看Massive的documentation,节省数据库连接执行时间的方法是将连接对象保存一次到Express的应用程序设置中。我的问题是,当 REST API 模块化时,如何访问 Express 的 app 变量?问题举例:
app.ts:
import express = require('express');
import greeter = require('./api/greeter');
var app = express();
app.get('/api/greeter', greeter.get);
greeter.ts:
import express = require("express");
function get(req: express.Request, res: express.Response, next: Function): any
{
// The this object seems not the Express's app object.
// console.log(this)
// How to access Express's app variable here?
// var db = app.get('db');
db.item.findOne({item_id : 1}, (err, item) => {
res.json(item);
});
}
我检查了get RequestHandler中的this对象,this对象好像不是Express的app对象。也检查了 req 和 res 参数,好像 Express 的 app 对象也没有。
Express TypeScript 定义未更新。为了 TypeScript 用户的利益,只需通过索引器访问应用程序即可。这有效:
import express = require("express");
export function get(req: express.Request, res: express.Response, next: Function): any {
var app : express.Application = req["app"];
var db = app.get('db');
看看Massive的documentation,节省数据库连接执行时间的方法是将连接对象保存一次到Express的应用程序设置中。我的问题是,当 REST API 模块化时,如何访问 Express 的 app 变量?问题举例:
app.ts:
import express = require('express');
import greeter = require('./api/greeter');
var app = express();
app.get('/api/greeter', greeter.get);
greeter.ts:
import express = require("express");
function get(req: express.Request, res: express.Response, next: Function): any
{
// The this object seems not the Express's app object.
// console.log(this)
// How to access Express's app variable here?
// var db = app.get('db');
db.item.findOne({item_id : 1}, (err, item) => {
res.json(item);
});
}
我检查了get RequestHandler中的this对象,this对象好像不是Express的app对象。也检查了 req 和 res 参数,好像 Express 的 app 对象也没有。
Express TypeScript 定义未更新。为了 TypeScript 用户的利益,只需通过索引器访问应用程序即可。这有效:
import express = require("express");
export function get(req: express.Request, res: express.Response, next: Function): any {
var app : express.Application = req["app"];
var db = app.get('db');