微信小程式支援 cookie的程式碼實現
這篇文章帶給大家的內容是關於微信小程式支援 cookie的程式碼實現,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
weapp-cookie
一行程式碼讓微信小程式支援cookie,傳送門:github
Intro
微信原生的wx.request 網路請求介面並不支援傳統的Cookie,但有時候我們現有的後端介面確於依賴Cookie(例如伺服器使用者登入態),而這個函式庫可用一行程式碼為你的小程式實作Cookie 機制,以確保基於cookie 的服務會話不會失效,與web 端共用會話機制
Featrues
##一行程式碼讓小程式支援cookie
可使用api 取得、設定cookie
支援domain/path 作用域
Install######
npm install weapp-cookie --save # 将 npm 包复制到 vendor 文件夹,避免小程序可能不能找到文件(tips:使用 wepy/mpvue 等框架无需此步) cp -rf ./node_modules/ ./vendor/
// app.js import './vendor/weapp-cookie/index' // tips: 使用 wepy/mpvue 可以直接在入口 js 引入 weapp-cookie 模块 // import 'weapp-cookie' App({ onLaunch: function () { } // ... })
// pages/home/index.js Page({ onLoad: function () { wx.request({ url: 'https://example.com/login', data: { username: 'admin', password: '123456' }, success: function (res) { /* * 接口调用成功后 weapp-cookie 会自动保存后端发送的所有Cookie(比如:SessionID) * 并在后续的所有请求中带上,以保证基于 cookie 的服务器会话机制不会失效, * 实现与 web 端共用会话机制(无需再手动维护 3rd_session_key) */ } }) } })
import cookies from 'weapp-cookie' // 获取 cookie let token = cookies.get('csrf_token', 'example.com') // 设置 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') // ... 详情请参考 Api
import cookies from 'weapp-cookie' /** * 获取 cookie 值 * @param {String} name cookie 名称 * @param {String} [domain] 指定域名(可选) * @return {String} cookie 值 */ cookies.get(String name, String domain) /** * 设置 cookie * @param {String} name cookie 名称 * @param {String} value cookie 值 * @param {Object} options cookie 选项 * @param {String} options.domain 设置域名 * @param {String} [options.path] * @param {Date} [options.expires] * @param {Number} [options.maxAge] * @param {Boolean} [options.httpOnly] * @return {Cookie} cookie 对象 */ cookies.set(String name, String value, Object options) /** * 是否存在某个 cookie * @param {String} name cookie 名称 * @param {String} [domain] 指定域名(可选,不指定则任意域名包含名称为 name 的 cokkie 即为存在) * @return {Boolean} 是否存在 */ cookies.has(String name, String domain) /** * 删除 cookie * @param {Array} name cookie 键 * @param {String} [domain] 指定域名(可选,不指定则删除所有域名中名称为 name 的 cookie) * @return {Boolean} 是否删除成功 */ cookies.remove(String name, String domain) /** * 获取 cookie 对象 * @param {String} name cookie 名称 * @param {String} [domain] 指定域名(可选) * @return {Cookie} cookie 对象 */ cookies.getCookie(String name, String domain) /** * 获取 cookies JSON对象 * @param {String} [domain] 指定域名(可选,不指定则获取包含所有域名的 cookie 值对象) * @return {Object} cookie JSON对象 */ cookies.getCookies(String domain) /** * 清除 cookie * @param {String} [domain] 指定域名(可选,不指定则清除所有域名 cookie) * @return {Boolean} 是否清除成功 */ cookies.clearCookies (domain) /** * 获取所有存储的域名和 cookies 结构 * @return {Object} obj 结构JSON对象 */ cookies.dir(domain)
import cookies from 'weapp-cookie' // 获取 cookie 对象 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 方法 ===== /** * 验证 cookie 是否过期 * @return {Boolean} 是否过期 */ cookie.isExpired() /** * 验证 cookie 是否可持久化 * @return {Boolean} 是否可持久化 */ cookie.isPersistence()
以上是微信小程式支援 cookie的程式碼實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Cookie通常儲存在瀏覽器的Cookie資料夾中的,瀏覽器中的Cookie檔案通常以二進位或SQLite格式存儲,如果直接開啟Cookie文件,可能會看到一些亂碼或無法讀取的內容,因此最好使用瀏覽器提供的Cookie管理介面來檢視和管理Cookie。

電腦上的Cookie儲存在瀏覽器的特定位置,具體位置取決於使用的瀏覽器和作業系統:1、Google Chrome, 儲存在C:\Users\YourUsername\AppData\Local\Google\Chrome\User Data\Default \Cookies中等等。

手機上的Cookie儲存在行動裝置的瀏覽器應用程式中:1、在iOS裝置上,Cookie儲存在Safari瀏覽器的Settings -> Safari -> Advanced -> Website Data中;2、在Android裝置上,Cookie儲存在Chrome瀏覽器的Settings -> Site settings -> Cookies中等等。

JavaScript教學:如何取得HTTP狀態碼,需要具體程式碼範例前言:在Web開發中,經常會涉及到與伺服器進行資料互動的場景。在與伺服器進行通訊時,我們經常需要取得傳回的HTTP狀態碼來判斷操作是否成功,並根據不同的狀態碼來進行對應的處理。本篇文章將教你如何使用JavaScript來取得HTTP狀態碼,並提供一些實用的程式碼範例。使用XMLHttpRequest

隨著網路的普及,我們使用瀏覽器進行上網已經成為一種生活方式。在日常使用瀏覽器過程中,我們常會遇到需要輸入帳號密碼的情況,如網購、社交、郵件等。這些資訊需要瀏覽器記錄下來,以便下次造訪時不需要再次輸入,這時候Cookie就派上了用場。什麼是Cookie? Cookie是指由伺服器端發送到使用者瀏覽器上並儲存在本地的一種小型資料文件,它包含了一些網站的使用者行為

在日常使用電腦與網路的過程中,我們常接觸到cookie。 Cookie是一種小型的文字文件,它保存了我們在網站上的存取記錄、偏好設定和其他資訊。這些資訊可以被網站使用,以便更好地為我們提供服務。但是有時候,我們需要找出cookie的信息,來找到我們要的內容。那我們該如何在瀏覽器中尋找cookie呢?首先,我們要先了解cookie的存在位置。在瀏覽器中

JavaScript中的HTTP狀態碼取得方法簡介:在進行前端開發中,我們常常需要處理與後端介面的交互,而HTTP狀態碼就是其中非常重要的一部分。了解並取得HTTP狀態碼有助於我們更好地處理介面傳回的資料。本文將介紹使用JavaScript取得HTTP狀態碼的方法,並提供具體程式碼範例。一、什麼是HTTP狀態碼HTTP狀態碼是指當瀏覽器向伺服器發起請求時,服務

Cookie設定的常見問題及解決方案,需要具體程式碼範例隨著網路的發展,Cookie作為一種最常見的常規技術,已廣泛應用於網站和應用程式中。 Cookie,簡單來說,是一種儲存在使用者電腦上的資料文件,可用於儲存使用者在網站上的信息,包括登入名稱、購物車內容、網站首選項等等。 Cookie對於開發人員來說是必不可少的工具,但同時,Cookie設定常常會遇到
