1

これをスキャフォールディングの例に入れる計画で、ユーザーの承認の y-book の例に従っていました。

y-wiki に良い例がありますが、これを試してみたかったのです。したがって、「インスタンス Yesod App where」内の Foundation.hs で

-- route name, then a boolean indicating if it's a write request
isAuthorized HomeR True = isMyAuth
isAuthorized BlogR _ = isMyAuth
-- anyone can access other pages
isAuthorized _ _ = return Authorized

インスタンススコープ外のものの後:

isMyAuth = do
  mu <- maybeAuthId
  return $ case mu of
    Nothing -> AuthenticationRequired
    Just "mylog" -> Authorized
    Just _ -> Unauthorized "You must be an mylog"

インスタンス YesodAuthApp では、

-- type AuthId App = UserId
type AuthId App = Text

また、loginDest を BlogR を指すように変更しました。db-access で getAuthId をどのように記述すればよいですか。isMyAuth 関数とまったく同じテキスト「mylog」と比較したいだけです。getAuthId をコメントアウトすると、内部サーバー エラーが発生します。このメソッドが欠落している場合、ghc がコンパイルされないようにすることは可能ですか?

getAuthId creds = return $ "mylog" だけ

コンパイルするようです。ただし、「サインイン」後、これはログイン ページにとどまり、BlogR ページにリダイレクトされません。

4

0 に答える 0