【问题标题】:Using ExpressJS Session in Typescript在 Typescript 中使用 ExpressJS 会话
【发布时间】:2020-11-13 22:43:39
【问题描述】:

在 ExpressJS 中使用打字稿时...我遇到了很多问题,其中之一是我试图访问由提供的 requestresponse 参数中的数据第三方中间件,例如 express-session。

我这里有这段代码:

import express, {
    Application,
    Request,
    Response
} from 'express';


const cli:Application = express();

cli.set('trust proxy', true);
cli.use(require('cookie-parser')());
cli.use(require('express-session')({secret: 'Help me!'}));

cli.get('/invites/:invite', (req:Request, res:Response) => {
    if (req.params.invite){
        req.session.code = req.params.invite;
        console.log(req.session.code);
        res.send(req.session.code);
  
    }
});

当我将此代码放入我的 IDE 时,我收到此错误:

我已经尝试使用扩展界面进行修复:


interface WithSession extends Request {
    session: any
}

cli.get('/invites/:invite', (req:WithSession, res:Response) => {
    if (req.params.invite){
        req.session.code = req.params.invite;
        console.log(req.session.code);
        res.send(req.session.code);
  
    }
});

但我的 IDE 仍然报错: 如果有任何方法可以解决这个问题,请告诉我!

感谢您阅读我的问题,希望您能解决!

【问题讨论】:

    标签: typescript express


    【解决方案1】:

    答案是安装@types/express-session,并可能关闭严格的空检查。更多讨论请见here

    【讨论】:

      猜你喜欢
      • 2013-02-08
      • 1970-01-01
      • 2017-02-25
      • 1970-01-01
      • 2011-07-31
      • 2012-07-22
      • 2012-04-26
      • 1970-01-01
      • 2012-07-19
      相关资源
      最近更新 更多