cookie簡介及應用

cookie簡介:

  • cookie 是存儲在計算機上的變量。當我們用同一個瀏覽器訪問同一個域名下的網頁的時候,都可以拿到cookie的值。
  • 當我們初次訪問一個頁面的時候,服務器在http請求的相應報文中,命令瀏覽器儲存cookie。以後我們在同一個瀏覽器訪問該域時,http請求的報文都會攜帶cookie過去的,看下圖 :

             初次訪問接口 : http://localhost:3000

                

             訪問其他接口:

              

cookie使用:

  1. 設置cookie: ctx.cookies.set(name,value,options)

            @params:  name  : string

                                  value : string

                                  options :object 

             @options的參數值:

                                maxAge              一個數字表示從 Date.now() 得到的毫秒數
                                expires                 cookie過期的 Date
                                path                     cookie 路徑, 默認是'/'
                               domain                 cookie域名
                               secure             安全 cookie   默認false,設置成true表示只有 https可以訪問
                               httpOnly           是否只是服務器可訪問 cookie, 默認是 true
                               overwrite          一個布爾值,表示是否覆蓋以前設置的同名的 cookie (默認是 false). 如果是 true, 在同一個請求                                                                  中設置相同名稱的所有 Cookie(不管路徑或域)是否在設置此Cookie 時從 Set-Cookie 標                                                                  頭中過濾掉。

 cookie案例:

const Koa = require('koa');
const Router = require('koa-router')();
const App = new Koa();

Router.get('/',function (ctx) {
    ctx.cookies.set('role','admin',{'httpOnly':false});
    ctx.body = '首次設置cookie'
})
Router.get('/admin/article',function (ctx) {
    console.log(ctx.cookies.get('role'));
    ctx.body = '獲得cookie'
})
App.use(Router.routes());
App.use(Router.allowedMethods());

App.listen(3000,function () {
    console.log('quick start at port 3000')
})

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章