1. 程式人生 > >nodejs(express4.0)設定中文cookie無效

nodejs(express4.0)設定中文cookie無效

通過express4.0的cookies方法設定cookie時,寫了中文的cookie值,一直失敗。程式碼如下:

req.cookies.set('userInfo',JSON.stringify({
    _id:userInfo._id,
    username:userInfo.username,
    role:new userInfo.role
}));

當username或role為中文是一直報錯

解決方案:

把字串轉成base64即可

new Buffer('中文').toString('base64')

base64轉到字串

new Buffer(str, 'base64').toString();//str是base64編碼的字串
頁面上邊用的時候轉為中文即可
res.render('/',{
    userInfo:{
        username:new Buffer(req.userInfo.username, 'base64').toString(),
        role:new Buffer(req.userInfo.role, 'base64').toString()
    }
});

這樣就實現了中文cookie的處理

轉載至:http://blog.csdn.net/luo200618/article/details/72789759


相關推薦

nodejs(express4.0)設定中文cookie無效

通過express4.0的cookies方法設定cookie時,寫了中文的cookie值,一直失敗。程式碼如下:req.cookies.set('userInfo',JSON.stringify({ _id:userInfo._id, username:use

nodejs 設定中文cookie無效

通過koajs的cookies方法設定cookie時,寫了中文的cookie值,一直失敗。程式碼如下: this.cookies.set('test', '我是koajs') 報錯如下: sent error argument value is invalid to t

CentOS7.0設定中文輸入法

下面詳細講解了安裝CentOS7之後,如何找到中文輸入法: 1.點選螢幕左上角的【應用程式】->【系統工具】->【設定】,如下圖所示 2.在彈出的設定對話窗中選擇【區域和語言】,如下圖所示 3.在彈出的【區域和語言】對話窗中,點選左下角“+”,彈出【新增輸入

PHP設定cookie無效問題原因以及解決方案

在某個頁面中使用setcookie來設定cookie,例如 setcookie("id",$id, time()+36002430); 但是回到首頁之後發現沒有生效,用javascript:alert(document.cookie)裡面為空,PHP裡面的$_COOKIE

Mysql (5.0)設定了utf8還是會出現中文亂碼的解決方法

最近想熟悉一下資料庫的知識,於是裝了個數據庫練習,我用的版本是mysql5.0,我遇到的問題是設定了utf8還是會出現中文亂碼,插入中文也無法插入,提示 前提條件是我在安裝資料庫的時候,選擇是utf8的字符集,在mysql的安裝目錄下的my.ini檔案顯示的也是uft8 資料庫輸入&nb

Dialog設定背景透明無效,在安卓5.0系統上無效解決方法!

困擾了大半天的一個問題,寫一個關閉按鈕突出的dialog,在eclipse上面寫的Demo,然後執行在魅族,紅米,華為手機上都沒問題,都能正常的突出按鈕(其中魅族手機和華為手機都是5.0以上的系統),

Linux系統下Solr7.0安裝及設定中文分詞和拼音檢索

一、準備工作Jdk版本 1.8.0_151。Tomcat版本 apache-tomcat-8.0.50Solr版本 solr-7.0.0二、安裝solr1、安裝jdk不會的參考點選開啟連結tomcat安裝請自行百度2、安裝solr 2.1、首先將solr-7.0.0.tgz上

thinkphp 2.0實現從cookie讀取配置設定語言

需求: 根據網站的cookie中的lang設定的語言進行全站的多語言顯示 分析: 因為tp裡面多語言是通過url新增引數l=zh-cn這種形式進行判斷的,本來想著在入口檔案中追加引數到url後面,

mysql 5.7, 8.0 設定密碼無效

最近安裝mysql 5.7.22發現:通過修改mysql.user表中的authentication_string欄位來修改密碼無效,查閱資料後發現要這樣:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_n

centos 上安裝nodejs v8.0.0

成功 entos local code http logs 目錄 鏈接 ech 新建目錄www 下載nodejs wget https://npm.taobao.org/mirrors/node/v8.0.0/node-v8.0.0-linux-x64.tar.xz 解

Autodesk AutoCAD 2019.0.1中文破解版 32位&64位(附註冊機/序列號)

AutoCAD Autodesk 二維繪圖 Autodesk AutoCAD 2019.0.1中文破解版:http://www.3322.cc/soft/38120.htmlAutoCAD 2019.0.1是由Autodesk公司於2018年全新發布的自動計算機輔助設計軟件,主要用於二維繪圖、詳細

AutoCAD 2019.0.1中文破解版 32位&64位(附註冊機/序列號)

autocad Autodesk 二維繪圖 AutoCAD 2019.0.1中文破解版:http://www.3322.cc/soft/38120.html AutoCAD 2019.0.1安裝教程 安裝AutoCAD 2019.0.1版本之前,請先安裝AutoCAD 2019版本,若無此版本請自

AutoCAD 2019.0.1中文破解版

autocad autodesk 二維繪圖 AutoCAD 2019.0.1中文破解版:http://www.3322.cc/soft/38120.htmlAutoCAD 2019.0.1是由Autodesk公司於2018年全新發布的自動計算機輔助設計軟件,主要用於二維繪圖、詳細繪制、設計文檔和基

AutoCAD 2019.0.1破解版|Autodesk AutoCAD 2019.0.1中文破解版

adobe 2019Autodesk AutoCAD 2019.0.1中文破解版請添加鏈接描述AutoCAD 2019.0.1安裝教程 安裝AutoCAD 2019.0.1版本之前,請先安裝AutoCAD 2019版本,若無此版本請自行下載並安裝1、下載數據包後解壓,鼠標雙擊“AutoCAD_2019.0.1

springboot2.0入門(中文亂碼問題)

轉載自 https://blog.csdn.net/u012702547/article/details/53740047 因為工作需要自學springboot,將這篇文章作為springboot基礎入門,個人感覺作者寫的挺好,只是我是使用springboot2.0版本, 在實際使用的過程中還是

解決IE9,hack 設定背景圖無效

今天做一個相容IE9 的loading效果,但是發現在 background 註明 \9,在IE9模擬環境下無效background: url("./image/ico_loading.gif") no-repeat scroll center center\9;解決方法: background: url(

Kali 系統——設定中文字型

因為kali是基於Debian的,那麼得用Debian的漢化過程 1、重新配製安裝的軟體包 [email protected]:~# dpkg-reconfigure locales 2、選擇字元編碼 把下面的三個選擇上(按空格鍵選擇),其餘取消選擇,table

Sublime Text 3 設定中文+禁用更新+永久啟用教程(2018-8-30親測給力)

傳送門 https://www.sublimetext.com/3 設定中文 一、找到 Tools->Install Package Control 選項,調出 Package Control; 二、去找“Tools->Command Palette…”選項; 三

Retrofit2.0 設定 連線超時

Retrofit2.0 這個網路請求框架使用了很久了,最近一次出現一個小插曲。 有一個介面,返回的資料量因為業務的原因 會返回很大的資料量,此時網路不大好的情況下,會出現請求失敗的情況 也就是回調了 onFaileure()方法,測試一下,大概都在10秒就會回撥這個方法。 去後臺驗證,發現數據請求成功,

CentOS設定中文

1.su root 輸入密碼 2.locale 當前使用的系統語言 3.locale -a 檢視系統中可以使用的語言 4.find  /  -name  i18n 查詢i18n 5.vi  /etc/sysconfig/i18n  修