package FPauth-core

  1. Overview
  2. Docs

ROUTER is a module which contains handlers for authentication and creates routes for them.

type entity

type entity is a type of authenticatable entity equal to MODEL.t

type strategy = (module STRATEGY with type entity = entity)

strategy is a function that authenticates an entity from a request.

val login_handler : strategy Base.list -> (module RESPONSES) -> Dream.request -> Dream.response Lwt.t

login_handler gets strats and redponses, starts authentication and handles its results

val logout_handler : (module RESPONSES) -> Dream.request -> Dream.response Lwt.t

logout_handler loguts authenticated user

val call : ?root:Base.string -> responses:(module RESPONSES) -> extractor:Static.Params.extractor -> strategy Base.list -> Dream.route

call ?root ~responses ~extractor strat_list creates routes for authentication and added to Dream.router.

Has some basic routes:

extractor defines how to extract params from requests for basic routes. See Static.Params.extractor.

responses define how to respond on these basic routes after handling authentication processes.

?root defines the root for all authentication-related routes. Default is "/".