国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

express cookie-parser 小書

senntyou / 1088人閱讀

摘要:簡介是最常使用的中間件實際上雖然他名義上是一個中間件但是實際上已經儼然成為了的一個不可或缺的部分在的文檔中操作的部分就一個方法和一個屬性但是實際上如果你不使用中間件這些方法是根本就不存在的先從操作說起如果有一個純凈的像這樣我們如何操縱顯

簡介

cookie-parser是Express最常使用的中間件,實際上雖然他名義上是一個中間件但是實際上已經儼然成為了Express的一個不可或缺的部分.

在Express4的文檔中,操作Cookie的部分就一個方法和一個屬性.但是實際上如果你不使用cookie-parser中間件這些方法是根本就不存在的.

先從Express操作cookie說起

如果有一個純凈的Express,像這樣:

const app = new express();
app.get("/login", (request, response) => {

    response.send("hello express");

});
app.listen(8888, "127.0.0.1");

我們如何操縱cookie?,顯然只能在requestresponse中操縱.

express在request提供了:

cookies {Object}

response提供了:

res.cookie(name, value [, options])

簡單來講一個用于獲取另外一個用于寫入.

但是一切的前提就是你得使用cookie-parser中間件的前提下才可以擁有這個屬性和方法,之前我就被坑了.

在上面的極簡實例中我們得使用:

app.get("/login", (request, response) => {

    console.log(request.headers.cookie);
    response.send("hello express");

});

才可以獲取沒有使用cookie-parser中間件時候的cookie.

cookie-parser的具體功能

已鍵值對的形式的獲取cookie

使用簡單的方法設置cookie

對于cookie進行簽名

調用參數

cookie-parser在初始化的時候和寫入cookie的時候允許傳入參數.

在初始化的時候允許傳入:

參數 類型 描述
secret string string[] 用于簽名cookie的字符串
options object 選項基于cookie模塊
cookie方法參數

基本格式如下res.cookie(name, value [, options]).

其中第一個參數是name是cookie的鍵,而value是鍵對應的的值.

options有如下的選項,基本都是cookie在HttpHeader中的參數:

參數 類型 描述
domain string 描述cookie作用的主機
path stirng 只有在匹配成功的地址才會發送cookie默認 /
encode function 用于cookie的編碼默認是encodeURIComponent
expires date 使用GMT格式的時間來指定過期時間
maxAge number 指定多好毫秒后cookie失效
httpOnly boolean 設置后客戶端無法訪問cookie的內容
secure boolean 標記這個cookie只有在https協議下起作用
signed boolean 對于cookie進行簽名
sameSite boolean 阻止cookie在跨站請求的時候發送

在MDN中有cookie的詳細解釋,上面除了signed外都有介紹.

https://developer.mozilla.org...
使用示例

基本示例:

const express = require("express");
const cookieParse = require("cookie-parser");

const app = new express();

app.use(cookieParse());

app.get("/login", (request, response) => {

    // 以鍵值對的形式獲取所有的cookie
    console.log(reqeust.cookies);
    
    // 寫入cookie
    response.cookie("key", "value");

    response.send("hello express");

});

app.listen(8888, "127.0.0.1");

使用cookie簽名:

const express = require("express");
const cookieParse = require("cookie-parser");

const app = new express();

// 傳入一個字符串對cookie進行簽名
app.use(cookieParse("hello world"));

app.get("/login", (request, response) => {

    // 獲取沒有簽名的cookie
    console.log(request.cookies);
    // 獲取簽名的cookie
    console.log(request.signedCookies);
    
    // 寫入簽名cookie
    response.cookie("signed", "true", {maxAge: 100000,signed:true});
    
    // 寫入未簽名cookie
    response.cookie("key", "value");
    
    
    response.send("hello express");

});

app.listen(8888, "127.0.0.1");

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/99442.html

相關文章

  • express express-session 小書

    摘要:簡介是中的一個處理的中間件可以說是中最常見的中間件之一了由于會話管理依賴的使用所以它的中有很多用于控制的部分總的來說有如下的特點管理基本功能簽名可替換持久儲存模塊本文中使用的版本為安裝引入使用使用簽名這個屬性是必須的具體配置和 簡介 express-session是express中的一個處理session的中間件,可以說是express中最常見的中間件之一了. 由于會話管理依賴cook...

    Scorpion 評論0 收藏0
  • express中cookie的使用和cookie-parser的解讀

    摘要:最近在研究,學著使用,開始不會用,就百度了一下,沒有百度到特別完整的解答。查閱了的,綜合了網友的博客,解讀了的源碼,以及使用和驗證,終于明白了中的使用。默認為網站域名過期時間,類型為。使用插件,后續代碼直接使用或者即可 最近在研究express,學著使用cookie,開始不會用,就百度了一下,沒有百度到特別完整的解答。查閱了express的API,綜合了網友的博客,解讀了cookie-...

    CODING 評論0 收藏0
  • node中的session

    摘要:當會話過期或被放棄后,服務器將終止該會話。原來中間件生成的是一個對象,里面包含了信息。這個有一個過期時間,比如,上面代碼中設置的是小時。也就是說,小時后,這個在瀏覽器中會自動消失。 前言 在上一篇中node中的cookie,對cookie進行了相關介紹,本篇將繼續前行,對session進行說明。 session是什么 session不就是會話嘛,那什么是會話呢?會話是一個比連接粒度更大...

    yankeys 評論0 收藏0
  • node中的session

    摘要:當會話過期或被放棄后,服務器將終止該會話。原來中間件生成的是一個對象,里面包含了信息。這個有一個過期時間,比如,上面代碼中設置的是小時。也就是說,小時后,這個在瀏覽器中會自動消失。 前言 在上一篇中node中的cookie,對cookie進行了相關介紹,本篇將繼續前行,對session進行說明。 session是什么 session不就是會話嘛,那什么是會話呢?會話是一個比連接粒度更大...

    fredshare 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<