Express Session with Serverless Redis | Upstash: Documentation

var

express

=

require

(

'express'

)

var

parseurl

=

require

(

'parseurl'

)

var

session

=

require

(

'express-session'

)

const

redis

=

require

(

'redis'

)

var

RedisStore

=

require

(

'connect-redis'

)

(

session

)

var

client

=

redis

.

createClient

(

{

}

)

;

var

app

=

express

(

)

app

.

use

(

session

(

{

store

:

new

RedisStore

(

{

client

:

client

}

)

,

secret

:

'forest squirrel'

,

resave

:

false

,

saveUninitialized

:

true

}

)

)

app

.

use

(

function

(

req

,

res

,

next

)

{

if

(

!

req

.

session

.

views

)

{

req

.

session

.

views

=

{

}

}

var

pathname

=

parseurl

(

req

)

.

pathname

req

.

session

.

views

[

pathname

]

=

(

req

.

session

.

views

[

pathname

]

||

0

)

+

1

next

(

)

}

)

app

.

get

(

'/foo'

,

function

(

req

,

res

,

next

)

{

res

.

send

(

'you viewed this page '

+

req

.

session

.

views

[

'/foo'

]

+

' times'

)

}

)

app

.

get

(

'/bar'

,

function

(

req

,

res

,

next

)

{

res

.

send

(

'you viewed this page '

+

req

.

session

.

views

[

'/bar'

]

+

' times'

)

}

)

app

.

listen

(

3000

,

function

(

)

{

console

.

log

(

'Example app listening on port 3000!'

)

;

}

)

;