我想在我正在开发的网站中使用yesod-auth,但我不想在文件中写入我的Google凭据,因为它在GitHub中是公开的。所以我编写了一些函数来解析你从谷歌获得的json文件。问题是它被卡在IO monad中,因此我无法将其传递给google oauth函数。有人有解决方案吗?
import Data.Aeson
import qualified Data.ByteString.Lazy as B
clientId = (client_id . web . decode) <$> B.readFile "D:\\cred.json"
clientSecret = (client_secret . web . decode) <$> B.readFile "D:\\cred.json"
....
instance YesodAuth App
authPlugins = [ authGoogleEmail clientId clientSecret ]
....