fluminus v2.0.1 Fluminus.Authorization View Source
Provides an abstraction over the OpenID Connect flow authorization process as used by LumiNUS
Struct fields:
:jwt
- the JWT Bearer token to be used by the API.
Link to this section Summary
Functions
Obtains the JWT from a Elixir.Fluminus.Authorization
struct. Note that the JWT is valid only for 30 minutes.
Creates a new Elixir.Fluminus.Authorization
struct containing the given JWT and refresh token.
Obtains a Elixir.Fluminus.Authorization
struct containing JWT required for authorization and cookies to refresh JWT. It will be valid for 8 hours and is non-renewable (just like fossil fuels).
Link to this section Types
Link to this section Functions
get_jwt(authorization)
View Sourceget_jwt(Fluminus.Authorization.t()) :: String.t() | nil
Obtains the JWT from a Elixir.Fluminus.Authorization
struct. Note that the JWT is valid only for 30 minutes.
Creates a new Elixir.Fluminus.Authorization
struct containing the given JWT and refresh token.
Obtains a Elixir.Fluminus.Authorization
struct containing JWT required for authorization and cookies to refresh JWT. It will be valid for 8 hours and is non-renewable (just like fossil fuels).
username
is the username of your NUSNET account (in the format of e0123456).
password
is the password of your NUSNET account.
Examples
iex> Fluminus.Authorization.vafs_jwt("nusstu\e0123456", "hunter2")
{:ok,
%Fluminus.Authorization{
jwt: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSIsImtpZCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSJ9.eyJpc3MiOiJodHRwczovL2x1bWludXMubnVzLmVkdS5zZy92Mi9hdXRoIiwiYXVkIjoidmVyc28iLCJleHAiOjE1NTIwNDQxNjcsIm5iZiI6MTU1MjA0Mzg2Nywibm9uY2UiOiJiNjE4ZjE3NzQwYTJlOWM3YjQ2ZjlmMmZmODJiYWQ1YSIsImlhdCI6MTU1MjA0Mzg2NywiYXRfaGFzaCIaIlA5TTF4dU9fNVVrdklXNDdKUHhYYn9iLCJjX2hhc2giOiJzTVZMRVM42Us0VjFIaFlPZmUtenRnIiwic2lkIjoiOTVlNTJjZjI4OTMyNzMyZjRjZjIxMzAxZjQ3NTE3ODQiLCJzdWIiOiIwMzA4OTI1Mi0wYzk2LTRmYWItYjA4MC1mMmFlYjA3ZWVi2GYiLCJhdXRoX3RpbWUiOjE1NTIwNDM4NjcsImlkcCI6Ikakc3J2IiwiYWRkcmVzayI6IlJlcXVlc3QgYWxsIGNsYWltcyIsImFtciI6WyJwYXNzd29yZCJdfQ.ElRgTpfGJc3np4N37JZZFr_8ZXkuBYjw_vxFxt_GV311gGJlDnh9YDepzWnIsNgtgnuLlkHdb73q9mt2XIcn6YHL0r2kI-CbdKx57aaDfE3-tudRgEv8vXIh53q0Tt61OR5_86qB2qr3QQn0WFvC5VJMYfQ-MJevGrcKFe80vFQPihSHtpznD3G7SyczY3m1yRWsiHNgymvUc4LM5QETOHYv72jDfo7VcxFpscwr4o3os_9fYM_62WuRo7OOL3WdD2XAQB6NGaeakIOQwqMbDSMSvpc0McpGW4uljlmBTiRfzCn7i9bnbfkWLJ5C6mK2o2CWgp1rr2f-HZsIIe-w2Q"
}}