PureScriptのJWT用のライブラリを作りました
PureScriptのJWT用ライブラリ、purescript-simple-jwtを作りました。
一応既存のものでpurescript-jwt
というライブラリがありましたが、デコード専用、且つ、署名の検証もしないものだったので、自分で作ることにしました。
使い方
エンコード
encode :: forall payload. WriteForeign payload => Secret -> Algorithm -> payload -> Effect Jwt
シークレットとアルゴリズムとペイロードを渡します。 アルゴリズムついては、HS256とHS512に対応しています。 ペイロードについては、仕様上不定なので、まぁ適当にレコード渡してください。
デコード
decode :: forall payload. ReadForeign payload => Secret -> Jwt -> Effect (Either JwtError payload)
シークレットとJWTを渡します。検証時に用いるアルゴリズムはJWTのヘッダから勝手に選びます。
トークンがおかしかったり、検証に失敗したりするとエラーが返ってきます。
ペイロードの中身を使ったチェック(例えば、exp
等による有効期限チェック)については、このライブラリの責務の範囲外としています。