https://github.com/bpcloud/middleware-koa-session
https://github.com/bpcloud/middleware-koa-session
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/bpcloud/middleware-koa-session
- Owner: bpcloud
- License: mit
- Created: 2025-01-22T10:17:26.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2025-03-22T05:17:43.000Z (2 months ago)
- Last Synced: 2025-03-30T18:02:13.862Z (about 2 months ago)
- Language: JavaScript
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# koa session middleware in bpframework.
### Middleware specification
https://github.com/bpcloud/middleware
### usage
`use koa-session`
Setup.
```js
import { Application } from 'bpframework';
import * as middleware_session from '@bpframework/middleware-koa-session';let cfg = {
keys: ['secure keys']
};Application.use(middleware_session.middleware(cfg))
Application.runKoa(...);
```Add global types declare
```js
import { Session } from '@bpframework/middleware-koa-session';declare module 'bpframework' {
export interface RestRequest {
session: Session;
}
}
```Use in RestController.
```js
@RequestMapping({
path: '/test',
method: RequestMethod.GET,
})
async test(
@RestObject restObj: RestObjectTypeRest // or RestObjectType
): Promise {// session is new.
if (this.session.isNew) {
// user has not logged in
} else {
// user has already logged in
}// set session value.
restObj.request.session.a = 1;// get session value.
console.log(restObj.request.session.a);// destroy session.
restObj.request.session.destroy();...
}
```