akka-stream-oauth2 provides some useful graph shapes of akka-stream for OAuth2.
libraryDependencies += "com.github.zhongl" %% "akka-stream-oauth2-<core or wechat or dingtalk>" % <latest tag>
A simple web application it's authencation based on Wechat Work
.
val ignore: HttpRequest => Boolean = ??? val oauth2: OAuth2[AccessToken] = WeWork { ??? } val routes: Route = { ??? } val graph = GraphDSL.create() { implicit b => import GraphDSL.Implicits._ val guard = b.add(Guard.graph(oauth2, ignore)) val merge = b.add(Merge[Future[HttpResponse]](2)) val serve = b.add(Flow.fromFunction(Route.asyncHandler(routes))) // format: OFF guard.out0 ~> serve ~> merge guard.out1 ~> merge // format: ON FlowShape(guard.in, merge.out) } val parallelism: Int = ??? val flow = Flow[HttpRequest].via(graph).mapAsync(parallelism)(identity) val f = http.bindAndHandle(flow, "0.0.0.0", 8080) gracefulShutdown(f)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4