blob: 40d056375698ee12ae0d296da4b50d7f8a6f38bf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
const sessions = new Map()
class Session {
constructor() {}
Create() {
const object = {
result: '',
characters: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
}
for (let i = 0; i < object.characters.length; i++) object.result += object.characters.charAt(Math.floor(Math.random() * object.characters.length))
sessions.set(object.result, Date.now() + (1000 * 60 * 60))
return object.result
}
Exists(x) {
sessions.set(x, Date.now() + (1000 * 60 * 60))
return sessions.has(x)
}
Expired() {sessions.forEach((value, key) => {if (Date.now() > value) sessions.delete(key)})}
}
module.exports = () => {return new Session()}
|