cookie

fun <S : Any> SessionsConfig.cookie(name: String, sessionType: KClass<S>, storage: SessionStorage)
inline fun <S : Any> SessionsConfig.cookie(name: String, storage: SessionStorage)

Configures Sessions to pass a session identifier in cookies using the nameSet-Cookie attribute and store the serialized session's data in the server storage.


inline fun <S : Any> SessionsConfig.cookie(name: String, storage: SessionStorage, block: CookieIdSessionBuilder<S>.() -> Unit)
inline fun <S : Any> SessionsConfig.cookie(name: String, sessionType: KClass<S>, storage: SessionStorage, block: CookieIdSessionBuilder<S>.() -> Unit)

Configures Sessions to pass a session identifier in cookies using the nameSet-Cookie attribute and store the serialized session's data in the server storage. The block parameter allows you to configure additional cookie settings, for example:

  • add other cookie attributes;

  • sign and encrypt session data.


fun <S : Any> SessionsConfig.cookie(name: String, sessionType: KClass<S>)
inline fun <S : Any> SessionsConfig.cookie(name: String)

Configures Sessions to pass the serialized session's data in cookies using the nameSet-Cookie attribute.


inline fun <S : Any> SessionsConfig.cookie(name: String, block: CookieSessionBuilder<S>.() -> Unit)

Configures Sessions to pass the serialized session's data in cookies using the nameSet-Cookie attribute. The block parameter allows you to configure additional cookie settings, for example:

  • add other cookie attributes;

  • sign and encrypt session data.

For example, the code snippet below shows how to specify a cookie's path and expiration time:

install(Sessions) {
cookie<UserSession>("user_session") {
cookie.path = "/"
cookie.maxAgeInSeconds = 10
}
}

inline fun <S : Any> SessionsConfig.cookie(name: String, sessionType: KClass<S>, block: CookieSessionBuilder<S>.() -> Unit)

Configures Sessions to pass the serialized session's data in cookies using the nameSet-Cookie attribute. The block parameter allows you to configure additional cookie settings, for example:

  • add other cookie attributes;

  • sign and encrypt session data.