我们正在尝试在应用程序前面构建一个API网关(我们可以尽快将应用程序拆分为微服务),我们遇到了一些问题。
1 -不同的类型.
在我们的应用程序中有两种API,其中大多数将由我们自己使用(用户登录/注销、新闻添加/删除),我们在这里称它们为Self-used API。一些API将被第三方所允许使用,我们在这里称它们为Open API。
他们都应该通过大门吗?
2 -不同身份验证
自用API可能需要用户登录或具有相关权限,Open将要求第三方应用程序获取密钥,我们将使用它来识别和限制请求率。
应该在网关中完成各种身份验证吗?如果是,自用api身份验证与业务相关,是否意味着此api网关不能被其他应用程序共享?
此外,第三方开发人员将创建他们的应用程序并获得一个密钥,他们还可以更新/删除应用程序(类似于Google控制台)。
我不确定这是否应该放在网关或其他微型服务中。海事组织,我更喜欢把这些功能放在一个新的服务中,但是验证和费率限制是在网关上进行的,这意味着对于每一个请求,网关都要通过服务的密钥查询用户、费率限制等信息,这将使网关再次与业务相结合。
发布于 2019-06-17 03:21:49
实现API网关的方法有很多种。您可以在一个API网关上使用不同的端点。这里有几个相关的链接
无服务器博客“如何使用Serverless在一个API域中部署多个微服务”https://serverless.com/blog/api-gateway-multiple-services/
你真的需要不同类型的API网关吗?(提示:不!)“https://www.nginx.com/blog/do-you-really-need-different-kinds-of-api-gateways-hint-no/
Sentialabs.io "Amazon网关类型、用例和性能“https://www.sentialabs.io/2018/09/13/API-Gateway-Types-Compared.html
AWS网关常见问题https://aws.amazon.com/api-gateway/faqs/
考虑一下您正试图通过您的方法实现的特性类型,以及API网关将如何帮助您解决这些问题。
https://stackoverflow.com/questions/56624199
复制相似问题