是否有一个使用Hoplon并处理网络身份验证的开源项目?

时间:2014-06-02 12:03:09

标签: clojure clojurescript noir hoplon

我正在寻找类似noir-auth-app的东西,但是用hoplon制作。

谢谢!

1 个答案:

答案 0 :(得分:4)

您可以在castra-chat demo中查看一些非常基本的身份验证代码。

Castra中的身份验证是通过RPC端点函数上的注释完成的。当函数被调用为RPC调用的端点时,这些注释会成为断言,但在从REPL或其他函数调用时则不会。将其视为仅在客户端调用函数时将代码注入函数的方法。这种架构有一些好处:

  • 身份验证成为RPC函数本身的一种先决条件,但由于它们是作为函数的注释实现的,因此它们不会与RPC函数的关注点相关联。
  • 以这种方式实现的身份验证是turing-complete:任何可以想象的身份验证方案都可以直接在您的应用程序中实现,作为clojure库。 Lisp可以做到(tm)。只要相信:))
  • 您可以在不需要模拟状态的情况下编写RPC函数,因为只评估客户端直接调用的端点的注释。
  • 您可以在REPL中调用RPC端点,也可以从测试中调用RPC端点,而无需模拟状态。当然,如果你想测试REPL可能的前提条件。