成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

微信小程序如何支持cookie

這篇文章給大家分享的是有關(guān)微信小程序如何支持cookie的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

創(chuàng)新互聯(lián)長(zhǎng)期為近1000家客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為蘇家屯企業(yè)提供專(zhuān)業(yè)的網(wǎng)站建設(shè)、成都網(wǎng)站制作,蘇家屯網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

weapp-cookie

一行代碼讓微信小程序支持 cookie,傳送門(mén):github

Intro

微信原生的 wx.request 網(wǎng)絡(luò)請(qǐng)求接口并不支持傳統(tǒng)的 Cookie,但有時(shí)候我們現(xiàn)有的后端接口確于依賴(lài) Cookie(比如服務(wù)器用戶(hù)登錄態(tài)),這個(gè)庫(kù)可用一行代碼為你的小程序?qū)崿F(xiàn) Cookie 機(jī)制,以保證基于 cookie 的服務(wù)會(huì)話(huà)不會(huì)失效,與 web 端共用會(huì)話(huà)機(jī)制

Featrues

  • 一行代碼讓小程序支持 cookie

  • 可使用 api 獲取、設(shè)置 cookie

  • 支持 domain/path 作用域

Install

npm install weapp-cookie --save

# 將 npm 包復(fù)制到 vendor 文件夾,避免小程序可能不能找到文件(tips:使用 wepy/mpvue 等框架無(wú)需此步)
cp -rf ./node_modules/ ./vendor/

Usage

在小程序根目錄的 app.js 一行代碼引入即可

// app.js
import './vendor/weapp-cookie/index'

// tips: 使用 wepy/mpvue 可以直接在入口 js 引入 weapp-cookie 模塊
// import 'weapp-cookie'

App({
    onLaunch: function () { }
    // ...
})

原來(lái)的 wx.request 調(diào)用方式保持不變,引入后 weapp-cookie 會(huì)在底層自動(dòng)代理 wx.request 的接口訪(fǎng)問(wèn),以支持 cookie 存儲(chǔ)和發(fā)送

// pages/home/index.js

Page({
    onLoad: function () {
        wx.request({
            url: 'https://example.com/login',
            data: {
                username: 'admin',
                password: '123456'
            },
            success: function (res) {
                /*
                 * 接口調(diào)用成功后 weapp-cookie 會(huì)自動(dòng)保存后端發(fā)送的所有Cookie(比如:SessionID)
                 * 并在后續(xù)的所有請(qǐng)求中帶上,以保證基于 cookie 的服務(wù)器會(huì)話(huà)機(jī)制不會(huì)失效,
                 * 實(shí)現(xiàn)與 web 端共用會(huì)話(huà)機(jī)制(無(wú)需再手動(dòng)維護(hù) 3rd_session_key) 
                 */
            }
        })
    }
})

cookie 操作可通過(guò) api 調(diào)用

import cookies from 'weapp-cookie'

// 獲取 cookie
let token = cookies.get('csrf_token', 'example.com')

// 設(shè)置 cookie
let cookie = cookies.set('uid', 100, { domain: 'example.com' })

// 刪除 cookie
let isRemoved = cookies.remove('uid', 'example.com')

// 判斷是否存在 cookie
let hasToken = cookies.has('uid', 'example.com')

// ... 詳情請(qǐng)參考 Api

Api

CookieStore

import cookies from 'weapp-cookie'

/**
* 獲取 cookie 值
* @param {String} name       cookie 名稱(chēng)
* @param {String} [domain]   指定域名(可選)
* @return {String}           cookie 值
*/
cookies.get(String name, String domain)

/**
* 設(shè)置 cookie
* @param {String}  name              cookie 名稱(chēng)
* @param {String}  value             cookie 值
* @param {Object}  options           cookie 選項(xiàng)
* @param {String}  options.domain    設(shè)置域名
* @param {String}  [options.path]      
* @param {Date}    [options.expires]
* @param {Number}  [options.maxAge]
* @param {Boolean} [options.httpOnly]
* @return {Cookie}           cookie 對(duì)象
*/
cookies.set(String name, String value, Object options)

/**
* 是否存在某個(gè) cookie
* @param  {String}  name       cookie 名稱(chēng)
* @param  {String}  [domain]   指定域名(可選,不指定則任意域名包含名稱(chēng)為 name 的 cokkie 即為存在)
* @return {Boolean}            是否存在
*/
cookies.has(String name, String domain)

/**
* 刪除 cookie
* @param  {Array}  name      cookie 鍵
* @param  {String} [domain]  指定域名(可選,不指定則刪除所有域名中名稱(chēng)為 name 的 cookie)
* @return {Boolean}          是否刪除成功
*/
cookies.remove(String name, String domain)

/**
* 獲取 cookie 對(duì)象
* @param {String} name       cookie 名稱(chēng)
* @param {String} [domain]   指定域名(可選)
* @return {Cookie}           cookie 對(duì)象
*/
cookies.getCookie(String name, String domain)

/**
* 獲取 cookies JSON對(duì)象
* @param  {String} [domain]  指定域名(可選,不指定則獲取包含所有域名的 cookie 值對(duì)象)
* @return {Object}           cookie JSON對(duì)象
*/
cookies.getCookies(String domain)

/**
* 清除 cookie
* @param  {String} [domain]  指定域名(可選,不指定則清除所有域名 cookie)
* @return {Boolean}          是否清除成功
*/
cookies.clearCookies (domain)

/**
* 獲取所有存儲(chǔ)的域名和 cookies 結(jié)構(gòu)
* @return {Object}   obj   結(jié)構(gòu)JSON對(duì)象
*/
cookies.dir(domain)

Cookie

import cookies from 'weapp-cookie'

// 獲取 cookie 對(duì)象
let cookie = cookies.getCookie('uuid', 'example.com')

// ===== cookie 屬性 =====
cookie.name:        String
cookie.value:       String
cookie.domain:      String
cookie.path:        String
cookie.expires:     Date
cookie.maxAge:      Number
cookie.httpOnly:    Boolean

// ===== cookie 方法 =====

/**
 * 驗(yàn)證 cookie 是否過(guò)期
 * @return {Boolean} 是否過(guò)期
 */
cookie.isExpired()

/**
 * 驗(yàn)證 cookie 是否可持久化
 * @return {Boolean} 是否可持久化
 */
cookie.isPersistence()

感謝各位的閱讀!關(guān)于“微信小程序如何支持cookie”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

新聞名稱(chēng):微信小程序如何支持cookie
地址分享:http://jinyejixie.com/article44/ggihhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、標(biāo)簽優(yōu)化網(wǎng)站營(yíng)銷(xiāo)、微信公眾號(hào)、微信小程序、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
南京市| 兴山县| 鞍山市| 潮安县| 井研县| 淄博市| 大同市| 游戏| 讷河市| 葫芦岛市| 讷河市| 遵义县| 牙克石市| 泸水县| 江西省| 赤水市| 新闻| 比如县| 监利县| 阿瓦提县| 陵川县| 噶尔县| 乐亭县| 巴彦淖尔市| 巨鹿县| 滦南县| 武乡县| 广饶县| 光泽县| 乌拉特后旗| 雅安市| 高青县| 明水县| 大同市| 石嘴山市| 霍城县| 巫山县| 贵溪市| 高碑店市| 鞍山市| 扶绥县|