Extractor<'T, 'E> Type
Asynchronously extracts a value from HTTP context. Used for authentication, authorization, reading headers, cookies, database lookups, or any value that requires request context.
Example
let requireAuth: Extractor<UserId, AppError> = fun ctx ->
task {
match ctx.User.FindFirst(ClaimTypes.NameIdentifier) with
| null -> return Error NotAuthenticated
| claim -> return Ok (UserId (Guid.Parse claim.Value))
}
val requireAuth: ctx: 'a -> System.Threading.Tasks.Task<Result<'b,'c>>
val ctx: 'a
val task: TaskBuilder
union case Result.Error: ErrorValue: 'TError -> Result<'T,'TError>
val claim: obj | null
union case Result.Ok: ResultValue: 'T -> Result<'T,'TError>
Falco.UnionRoutes