Node与Express开发:9 10 11 12 章

电子书:http://download.csdn.net/download/qfire/10232839

代码:https://github.com/EthanRBrown/web-development-with-node-and-express

第九章 Cookie与会话

    cookie的名声不好,当服务器希望客户端保存一个cookie时,它会发送一个响应头Se-Cookie,其中包含名称/值对。当客户端向服务器发送含有cookie的请求时,它会发送多个请求头Cookie,其中包含这些cookie的值。

    凭证的外化:为了保证cookie的安全,必须有一个cookie秘钥,一个字符串。外化第三方凭证是一种常见的做法,比如cookie秘钥、数据库密码和API令牌(Twiter, faceback等)。这不仅易于维护,还可以让你的版本控制系统忽略这些凭证文件。

    因此我们准备将凭证外化在一个JavaScript文件中credentials.js:

    Express中的Cookie

    $ npm install --save cookie-parser

    会话:实际上只是更方便的状态维护方法。通常用一个包含唯一标识的cookie,然后服务器用这个标识获取相应的会话信息。H5中可以用本地存储。

    基于cookie的会话,可查阅中间件cookie-session(https://www.npmjs.org/package/cookie-session)

    如果你更愿意把会话信息存在服务器上,这也是我推荐的方式,入门级的选择是内存会话。

    $ npm install --save express-session

    使用req.session.xxx的属性

    用会话实现即显消息

 第十章 中间件

     从概念上讲,中间件是一种功能的封装方式,具体来说就是封装在程序中处理HTTP请求的功能。从实战上讲,中间件只是一个有3个参数的函数:一个请求对象、一个响应对象和一个next函数。在管道中执行。

     常用中间件

     第三方中间件

第十一章 发送邮件

      推荐Nodemailer模块。

      将邮件作为网站监测工具

第十二章 与生产相关的问题

      $ export NODE_ENV=production node meadowlark.js

      添加一些日志,在开发环境中,会用Morgan,它的输出是便于查看的彩色文本。在生产环境中,会用express-logger,它支持日志循环(每个24小时复制,然后开始新的日志)

      扩展网站:最重要的是持久化。我一般会把表单提交的数据备份到本地普通文件中,以防数据库连接失效。一旦遇到数据库中断的情况,到每个服务器上收集文件虽然麻烦,但最起码不会造成破坏。

      集群扩展:如cluster

      处理未捕获的异常

      用多台服务器扩展:经常使用反向代理或正向代理。

      网站监控

      压力测试:用loadtest模块


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值