mirror of
https://github.com/freckle/yesod-auth-oauth2.git
synced 2026-04-22 10:47:43 +02:00
Brittany
This commit is contained in:
parent
5d78b889b0
commit
8f532bcfa5
@ -22,7 +22,8 @@ module Yesod.Auth.OAuth2
|
|||||||
, getRefreshToken
|
, getRefreshToken
|
||||||
, getUserResponse
|
, getUserResponse
|
||||||
, getUserResponseJSON
|
, getUserResponseJSON
|
||||||
) where
|
)
|
||||||
|
where
|
||||||
|
|
||||||
import Control.Error.Util (note)
|
import Control.Error.Util (note)
|
||||||
import Control.Monad ((<=<))
|
import Control.Monad ((<=<))
|
||||||
@ -65,16 +66,14 @@ authOAuth2Widget widget name oauth getCreds =
|
|||||||
|
|
||||||
-- | Read the @'AccessToken'@ from the values set via @'setExtra'@
|
-- | Read the @'AccessToken'@ from the values set via @'setExtra'@
|
||||||
getAccessToken :: Creds m -> Maybe AccessToken
|
getAccessToken :: Creds m -> Maybe AccessToken
|
||||||
getAccessToken =
|
getAccessToken = (AccessToken <$>) . lookup "accessToken" . credsExtra
|
||||||
(AccessToken <$>) . lookup "accessToken" . credsExtra
|
|
||||||
|
|
||||||
-- | Read the @'RefreshToken'@ from the values set via @'setExtra'@
|
-- | Read the @'RefreshToken'@ from the values set via @'setExtra'@
|
||||||
--
|
--
|
||||||
-- N.B. not all providers supply this value.
|
-- N.B. not all providers supply this value.
|
||||||
--
|
--
|
||||||
getRefreshToken :: Creds m -> Maybe RefreshToken
|
getRefreshToken :: Creds m -> Maybe RefreshToken
|
||||||
getRefreshToken =
|
getRefreshToken = (RefreshToken <$>) . lookup "refreshToken" . credsExtra
|
||||||
(RefreshToken <$>) . lookup "refreshToken" . credsExtra
|
|
||||||
|
|
||||||
-- | Read the original profile response from the values set via @'setExtra'@
|
-- | Read the original profile response from the values set via @'setExtra'@
|
||||||
getUserResponse :: Creds m -> Maybe ByteString
|
getUserResponse :: Creds m -> Maybe ByteString
|
||||||
|
|||||||
@ -63,7 +63,11 @@ dispatchForward name oauth2 = do
|
|||||||
-- 2. Use the code parameter to fetch an AccessToken for the Provider
|
-- 2. Use the code parameter to fetch an AccessToken for the Provider
|
||||||
-- 3. Use the AccessToken to construct a @'Creds'@ value for the Provider
|
-- 3. Use the AccessToken to construct a @'Creds'@ value for the Provider
|
||||||
--
|
--
|
||||||
dispatchCallback :: Text -> OAuth2 -> FetchCreds m -> AuthHandler m TypedContent
|
dispatchCallback
|
||||||
|
:: Text
|
||||||
|
-> OAuth2
|
||||||
|
-> FetchCreds m
|
||||||
|
-> AuthHandler m TypedContent
|
||||||
dispatchCallback name oauth2 getCreds = do
|
dispatchCallback name oauth2 getCreds = do
|
||||||
csrf <- verifySessionCSRF $ tokenSessionKey name
|
csrf <- verifySessionCSRF $ tokenSessionKey name
|
||||||
onErrorResponse $ oauth2HandshakeError name
|
onErrorResponse $ oauth2HandshakeError name
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user