如何实现身份验证?

时间:2012-07-15 14:22:44

标签: opa

我对Opa比较陌生,但我一直在关注它一段时间。我真的很喜欢它的发展方向。

我无法理解的一件事是在Opa中进行身份验证。

  1. 如何跟踪当前用户是否已登录/具有特定权限?
  2. 是否有针对电子邮件等常见内容的内置验证器? ...总体而言,使用Opa构建身份验证的推荐方法是什么?
  3. 我想我的底线问题是:我如何建立像http://jetleague.com/这样的身份验证呢?

    谢谢,

    - 亚瑟

1 个答案:

答案 0 :(得分:1)

我没有所有你的问题的答案,但我想我可以提供帮助。

  1. 我知道用于进行登录/身份验证的内置模块是stdlib.components.login/CLogin。我在这里问过:http://forum.opalang.org/2_294,详细了解如何使用它。阅读源代码很有帮助(但对我来说还不够!):https://github.com/MLstate/opalang/blob/v2988/lib/stdlib/components/login/login.opa#L104

  2. 对于电子邮件地址,我使用了stdlib.web.mail/Email模块。您可以使用of_string函数将字符串转换为电子邮件地址:

    import stdlib.web.mail;
    email = Email.of_string("drwho@example.com")
    
  3. 但是如果你的字符串无法解析为电子邮件地址,它会崩溃,这有点令人失望。您可能希望使用更安全的of_string_opt,而option(Email.email)只返回Email.email

    一旦我弄清楚如何使用CLogin模块,我会尝试更新这个问题!