美文网首页
在Node.js遇到的一些小坑

在Node.js遇到的一些小坑

作者: 席坤 | 来源:发表于2018-11-01 15:18 被阅读64次

    1.express-session使用时 req.session undefined

    本人在做session 储存时 一直报错 req.session  undefined 一脸懵逼,最后查阅发现 

    app.use(session({

      secret: 'xikun', //值可以随便取

      resave: false,

      saveUninitialized: true, //是否保存未初始化的会话

      cookie: {

        maxAge: 1000 * 60 * 30

      }

    }))

    该代码必须在路由设置前面,不然就会报错。

    2.Node.s里面使用 Redis 连接成功,但是在操作时  报 NOAUTH Authentication required

    错误的含义就是你没有认证,说明没有使用密码链接

    查看密码

    进去redis 安装目录

    vi redis.config

    打开 配置文件 输入/#requirepass 回车

    如图就是 你的密码 替换上便可正常操作

    3.Can't set headers after they are sent

     nodejs+express中出现这个错误都在路由里,大部分是程序运行了res.xxx之后,后面还有和请求,响应相关的操作造成的.

    主要是程序运行的先后顺序没理解透,也就是nodejs的一大特性 : 异步.初学者特别要注意.

    -- 理解到了nodejs程序运行的先后顺序,这个问题就迎刃而解.

    -- 还有就是res.xxx操作之后最好不要再有代码,就算是打印输出的代码也写在res.xxx之前,

    -- 另外,nodejs程序就算res.xxx响应以后,程序还会继续执行,return下更好.

             Node.js每次编写代码后都要进行重启才可生效,这对开发来说太不方便,怎么才可以做到自动化编译呢。

    网上介绍了很多种方法,这里作者介绍一种自己认为很简单的方法:

        全局安装npm install -g supervisor

    修改package.json启动方式 把"start": "node ./bin/www" 修改成 "start": "supervisor ./bin/www" 这样就可以实时编译了。

    本人也在学习Node.js过程中,遇到坑会慢慢积累,分享。

    相关文章

      网友评论

          本文标题:在Node.js遇到的一些小坑

          本文链接:https://www.haomeiwen.com/subject/rqdxxqtx.html