프로젝트에서 Babel을 사용하지 않는 경우 Babel 없이 이 버전을 사용해 볼 수 있습니다.
koa 세션2
Redis 또는 Babel이 포함된 mongodb와 같은 사용자 정의 스토어에서 세션 사용을 가져오거나 설정하는 Koa2용 미들웨어
koa 세션2
Redis 또는 Babel이 포함된 mongodb와 같은 사용자 정의 스토어에서 세션 사용을 가져오거나 설정하는 Koa2용 미들웨어
프로젝트에서 Babel을 사용하지 않는 경우 Babel 없이 이 버전을 사용해 볼 수도 있습니다.
설치npm install koa-session2
사용import Koa from "koa";<br>
import session from "koa-session2";<br>
<br>
const app = new Koa();<br>
<br>
app.use(session({<br>
key: "SESSIONID", //default "koa:sess" <br>
}));
"koa"에서 Koa 가져오기;
"koa-session2"에서 세션 가져오기;
const app = 새로운 Koa();import Redis from "ioredis";<br>
import {Store} from "koa-session2";<br>
<br>
export default class RedisStore extends Store {<br>
constructor() {<br>
super();<br>
this.redis = new Redis();<br>
}<br>
<br>
async get(sid) {<br>
return await this.redis.get(`SESSION:${sid}`);<br>
}<br>
<br>
async set(session, opts) {<br>
if(!opts.sid) {<br>
opts.sid = this.getID(24);<br>
}<br>
await this.redis.set(`SESSION:${opts.sid}`, session);<br>
return opts.sid;<br>
}<br>
<br>
async destroy(sid) {<br>
return await this.redis.del(`SESSION:${sid}`);<br>
}<br>
}
import Koa from "koa";<br>
import session from "koa-session2";<br>
import Store from "./Store.js";<br>
<br>
const app = new Koa();<br>
<br>
app.use(session({<br>
store: new Store()<br>
}));<br>
<br>
app.use(ctx => {<br>
let user = ctx.session.user;<br>
<br>
ctx.session.view = "index";<br>
});
app.use(세션({
키: "SESSIONID", //기본값 "koa:sess"
}));
맞춤형 스토어<br>
Store.js<br>'ioredis'에서 Redis 가져오기<br>
"koa-session2"에서 {Store} 가져오기;<br>
<br>
기본 클래스 내보내기 RedisStore 확장 Store {<br>
생성자() {<br>
슈퍼();<br>
this.redis = new Redis();<br>
}<br>
<br>
비동기 get(sid) {<br>
반환 대기 this.redis.get(`SESSION:${sid}`);<br>
}<br>
<br>
비동기 세트(세션, 옵션) {<br>
if(!opts.sid) {
opts.sid = this.getID(24);
}
wait this.redis.set(`SESSION:${opts.sid}`, session);
opts.sid 반환;
}
비동기 파괴(sid) {
반환을 기다리고 this.redis.del(`SESSION:${sid}`);
}
}
main.js"koa"에서 Koa 가져오기;
"koa-session2"에서 세션 가져오기;
"./Store.js"에서 Store 가져오기;
const app = 새로운 Koa();
app.use(세션({
상점: 새 스토어()
}));
app.use(ctx => {
let 사용자 = ctx.session.user;
ctx.session.view = "색인";
});옵션
쿠키를 기반으로 하는 대부분의 옵션키: 쿠키의 세션 ID 저장 문자열
store: 맞춤 스토어를 위한 클래스({Store} 확장, func: #get(sid), #set(session, opts), #destory(sid))
maxAge: Date.now()에서 만료되는 밀리초를 나타내는 숫자
만료: 쿠키의 만료 날짜를 나타내는 날짜 개체(기본적으로 세션 종료 시 만료됨).
경로: 쿠키의 경로를 나타내는 문자열(기본적으로 /)
domain: 쿠키의 도메인을 나타내는 문자열(기본값 없음)
secure: 쿠키가 HTTPS를 통해서만 전송되는지 여부를 나타내는 부울입니다(HTTP의 경우 기본적으로 false, HTTPS의 경우 기본적으로 true).
httpOnly: 쿠키가 HTTP(S)를 통해서만 전송되고 클라이언트 JavaScript에서는 사용할 수 없는지 여부를 나타내는 부울입니다(기본적으로 true).
signed: 쿠키가 서명되는지 여부를 나타내는 부울입니다(기본적으로 false). 이것이 사실이라면 동일한 이름에 .sig 접미사가 추가된 또 다른 쿠키도 첫 번째 키그립 키에 대한 쿠키 이름=쿠키 값의 해시를 나타내는 27바이트 URL 안전 base64 SHA1 값과 함께 전송됩니다. 이 서명 키는 다음에 쿠키가 수신될 때 변조를 감지하는 데 사용됩니다.
overwrite: 이전에 설정한 동일한 이름의 쿠키를 덮어쓸지 여부를 나타내는 부울입니다(기본적으로 false). 이것이 사실인 경우, 동일한 요청 중에 동일한 이름으로 설정된 모든 쿠키는(경로 또는 도메인에 관계없이) 이 쿠키를 설정할 때 Set-Cookie 헤더에서 필터링됩니다.라이선스
MIT
KoaHub.js -- 基于 Koa.js 平台的 Node.js 웹 快速开发框架
官网:http://js.koahub.com

了解Python编程的入门级代码示例Python是一种简单易学,功能强大的编程语言。对于初学者来说,了解Python编程的入门级代码示例是非常重要的。本文将为您提供一些具体的代码示例,帮助您快速入门。打印HelloWorldprint("HelloWorld")这是Python中最简单的代码示例。print()函数用于将指定的内容输出

PHP变量存储程序运行期间的值,对于构建动态且交互式的WEB应用程序至关重要。本文将深入探讨php变量,并通过10个真实的示例展示它们的实际应用。1.存储用户输入$username=$_POST["username"];$passWord=$_POST["password"];此示例从表单提交中提取用户名和密码,并将其存储在变量中以供进一步处理。2.设置配置值$database_host="localhost";$database_username="username";$database_pa

标题:从入门到精通:Go语言中常用数据结构的代码实现数据结构在编程中起着至关重要的作用,它是程序设计的基础。在Go语言中,有许多常用的数据结构,掌握这些数据结构的实现方式对于成为一名优秀的程序员至关重要。本文将介绍Go语言中常用的数据结构,并给出相应的代码示例,帮助读者从入门到精通这些数据结构。1.数组(Array)数组是一种基本的数据结构,是一组相同类型

如何使用PHP编写库存管理系统中的库存分仓管理功能代码库存管理是许多企业中不可或缺的一部分。对于拥有多个仓库的企业来说,库存分仓管理功能尤为重要。通过合理管理和跟踪库存,企业可以实现不同仓库之间的库存调拨,优化运营成本,改善协同效率。本文将介绍如何使用PHP编写库存分仓管理功能的代码,并为您提供相关的代码示例。一、建立数据库在开始编写库存分仓管理功能的代码之

Java冒泡排序最简单的代码示例冒泡排序是一种常见的排序算法,它的基本思想是通过相邻元素的比较和交换来将待排序序列逐步调整为有序序列。下面是一个简单的Java代码示例,演示了如何实现冒泡排序:publicclassBubbleSort{publicstaticvoidbubbleSort(int[]arr){int

《Go语言编程实例:Web开发中的代码示例》随着互联网的快速发展,Web开发已经成为各行业中必不可少的一部分。作为一门功能强大且性能优越的编程语言,Go语言在Web开发中越来越受到开发者们的青睐。本文将通过具体的代码示例,介绍如何利用Go语言进行Web开发,让读者能够更好地理解和运用Go语言来构建自己的Web应用。1.简单的HTTP服务器首先,让我们从一个

华为云边缘计算对接指南:Java代码示例快速实现接口随着物联网技术的快速发展和边缘计算的兴起,越来越多的企业开始关注边缘计算的应用。华为云提供了边缘计算服务,为企业提供了高可靠的计算资源和便捷的开发环境,使得边缘计算应用更加容易实现。本文将介绍如何通过Java代码快速实现华为云边缘计算的接口。首先,我们需要准备好开发环境。确保你已经安装了Java开发工具包(

Java选择排序法代码编写指南及示例选择排序是一种简单直观的排序算法,其思想是每次从未排序的元素中选择最小(或最大)的元素进行交换,直到所有元素排序完成。本文将提供选择排序的代码编写指南,并附上具体的Java示例代码。算法原理选择排序的基本原理是将待排序数组分为已排序和未排序两部分,每次从未排序部分选择最小(或最大)的元素,将其放到已排序部分的末尾。重复上述


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

드림위버 CS6
시각적 웹 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.
