Fork me on GitHub
#reitit
<
2022-11-06
>
John Tran23:11:36

Out of curiosity anyone with experience using reitit as an api-gateway? I am particularly interested the authentication/authorization pattern and wildcard pattern. Is using wildcard a bad practice? Or should every path should be explicitly listed?

John Tran13:11:39

Indeed they are very helpful. I've managed to get buddy to work with some feedback from @U055NJ5CC a while back but the solution was pretty contorted.

John Tran13:11:04

I guess I more interested in a reference implementation of an API gateway facade pattern. Thanks again for your helpful inputs @U0FT7SRLP

jeroenvandijk13:11:04

@U0G2VJQ21 Np! Please share if you find anything helpful. I am also looking for better patterns

👍 1
John Tran14:11:50

In the spirit of OSS maybe it would be interesting to build a reference implementation and get feedback. I am looking at krakend (for inspiration) and it's quite good. Alas, it's mostly GUI driven. Welp, I am hoping for is something more programmatic.

jeroenvandijk14:11:00

I don’t have specific expertise for API Gateways, but I can imagine the data driven approach of Reitit could be a good fit here. Not sure how to interpret those performance numbers of Krakend. Seems like you would put Kraken in front of your actual application? You would want to do something like this with Clojure + Reitit?

John Tran18:11:31

I was actually thinking of baking something that is equivalent to krakend in clojure using reitit. The challenge from what I can tell with krakend is that while it's good for a small number of of endpoints it could be massive if we have to click through a UI to generate/manage them. On the other hand with a reitit, we can as you've suggested with a data driven/programmatic approach get API gateway up and running efficiently. The challenge of course here is to start the baking of an API gateway reference implementation from which we can extend to include all the features one would expect from a high end API gateway.

jeroenvandijk10:11:34

I like the idea