Nodejs 学习2 Koa

2020-06-30  本文已影响0人  Eric_coco

1、Koa ejs 模版引擎

          1)安装 koa-views 和 ejs

                a、 安装 koa-views    npm install --save koa-views

                b、安装  ejs   npm install ejs --save 

           2)引入koa-views 配置中间件

                const views = require('koa-views');

                app.use(views('views', { map: {html: 'ejs' }}));

           3)Koa 中使用 ejs

      4) ejs 引入模版

       <%- include header.ejs %>

       5)ejs 绑定数据

       <%=h%>

        6)ejs 绑定 html 数据

        <%-h%>

        7)ejs 模板判断语句

        <% if(true){ %> 

                <div>true</div>

        <%} else{ %> 

                <div>false</div>

        <%} %>

        8) ejs 模板循环数据

        <%for(var i=0;i<list.length;i++) { %>

                    <li><%=list[i] %></li>

        <%}%>

2、Koa post 提交数据 koa-bodyparser 中间件的使用

        1、安装 koa-bodyparser

        npm install --save koa-bodyparser

        2、安装 引入配置中间件

        3、使用

        ctx.request.body 获取 post 提交的数据

3、Koa 中 koa-staitc 中间件

           1)安装 koa-static

            npm install --save koa-static

            2)引入配置中间件

            const static = require('koa-static');

            app.use(static( __dirname + '/public' ))

4、Koa 中 koa art-template 模板引擎

           1) 安装 koa art-template

            npm install --save art-template

            npm install --save koa-art-template

           2)导入 koa art-template 和使用

            const render = require('koa-art-template');

               3) art-template 模板引擎语法 

               参考: http://aui.github.io/art-template/zh-cn/docs/syntax.html

5、Koa 中 Cookie 使用

                1)cookie 介绍

                cookie 是存储于访问者的计算机中的变量。可以让我们用同一个浏览器访问同一个

                域名的时候共享数据。

                 HTTP 是无状态协议。简单地说,当你浏览了一个页面,然后转到同一个网站的另                                

                 一个页 面,服务器无法认识到这是同一个浏览器在访问同一个网站。每一次的访

                 问,都是没有任何 关系的。

                2)Koa Cookie 的使用

                      a、ctx.cookies.set(name, value, [options])

                     通过 options 设置 cookie name 的 value :                

                          b、Koa 中获取 Cookie 的值

                          ctx.cookies.get('name');  

6、Koa 中 Session 使用                      

          1)Session 介绍

                 session 是另一种记录客户状态的机制,不同的是 Cookie 保存在客户端浏览器中

                 而 session 保存在服务器上。

           2)Session 的工作流程

                当浏览器访问服务器并发送第一次请求时,服务器端会创建一个 session 对象,生 

                成一个类似于 key,value 的键值对, 然后将 key(cookie)返回到浏览器(客户)端,浏

                览 器下次再访问时,携带 key(cookie),找到对应的 session(value)。 客户的信息都

                保存 在 session 中。

            3)koa-session 的使用

                  1.安装 express-session               

                   npm install koa-session --save               

                   2.引入 express-session

                   const session = require('koa-session');

                   3、设置官方文档提供的中间件

            4)Cookie 和 Session 区别

                    1、cookie 数据存放在客户的浏览器上,session 数据放在服务器上。   

                    2、cookie 不是很安全,别人可以分析存放在本地的 COOKIE 并进行 COOKIE 欺

                           骗 考虑到安全应当使用 session。

                    3、session 会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器

                           的性能 考虑到减轻服务器性能方面,应当使用 COOKIE。

                     4、单个 cookie 保存的数据不能超过 4K,很多浏览器都限制一个站点最多保存 

                            20 个 cookie。

上一篇下一篇

猜你喜欢

热点阅读