问题标签 [api-gateway]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
974 浏览

api-gateway - 是否有更有效的方式为 CA API Gateway 配置 API

我正在尝试通过 CA-API 网关配置一些 API。

然而,CA 产品似乎在很大程度上基于 UI 交互 JSP。我已经看到他们还提供 REST 接口。

有没有人使用基于 JAVA 的 UI 以外的东西设置完整的 API?

理想情况下,我希望将我的完整配置作为代码。

API Gateway 的 REST api 似乎提供了很多获取和发布功能,但我无法让它工作:

对我的 CA APIGW 实例(https://localhost:9443/restman/1.0/services/template)执行获取模板会产生:

通过阅读模板,我希望能够使用 post 和以下正文创建新的已发布服务:

但是,到https://localhost:9443/restman/1.0/services的 POST 会产生:

而且我没有明显的方法来调试实际失败的内容。我希望能够在某处的日志中跟踪错误,但找不到任何文档或示例。

0 投票
1 回答
119 浏览

api - API Gateway 集群的安全注意事项?

在此处输入图像描述

  1. 通过 HTTPS 通过 API 网关针对 RESTful API 与单个入口点进行通信的客户端
  2. API Gateway:用于跟踪和分析的 API Keys,用于 API 平台身份验证的 oAuth
  3. 用户微服务提供用户认证和授权,生成经过签名和加密的JWT(JWS,JWE)
  4. 其他微服务根据 JWT 内部的声明确定权限
  5. 微服务在消息和其他信息中使用 JWT 通过 PUB/SUB 进行内部通信。每个微服务都可以通过多个实例(带有负载均衡器的集群)进行扩展。

问题我可以集群 API 网关并在其前面放置负载均衡器。在管理身份验证方面我需要考虑什么?即:跨 API Gateway 集群共享 API 密钥?

额外说明,我计划在网关处终止 SSL,并在数据库中使用 bcrypt 作为密码。

任何反馈都会很棒,谢谢。

0 投票
1 回答
175 浏览

aws-lambda - 使用 QueryString 的自定义授权方

我试图限制用户只查看自己的数据而不是其他任何人的数据。所以,如果用户(鲍勃)试图点击

,我希望API网关发送403,只允许username=bob。在 Lambda 方面,我从 RDS 获取数据。为了解决这个问题,我正在查看自定义授权者,但在思考如何确定进行查询的用户的身份时遇到了问题。

0 投票
0 回答
474 浏览

redirect - Grails 在拦截器中重定向到 URL——API 网关架构

语境:

我正在为一些微服务设计一个 API 网关。这个想法是:

我在一个全局拦截器中拦截所有传入的请求,根据一些权限分析它们的可访问性,最后使用一个简单redirect的方法来调用实际的 URL。例如,我在一个地方执行以下操作:

对于简单的GET请求,它工作正常。

问题

我在使用这种方法时遇到了一些问题。

  1. 当我从前端点击 API 时,通过我的网关,它给出一个302,最后给出一个200原始 API 是否存在于原始微服务中。它给出了一个404if 直接命中。发生了什么?
  2. 控制台中显示已preflight cors禁用的错误。那是什么?如果没有重定向,它就不存在。
  3. 我希望所有GET,PUTPOST请求重定向到各种微服务。据我搜索,grails 中的重定向仅支持GET请求。
  4. 有没有其他(更好的)方法可以实现相同的目标?也许RESTClient在服务器端或类似的东西。

其中一些问题已经部分回答,但不是在这种情况下。关于上下文中问题的任何见解都会很棒。

此处给出了完整的拦截器文件。此存储库包含 Grails API 网关的整个项目。

更新:下午 4:30

通过允许在服务器端解决了问题 2 。OPTIONSAllowed-Methods

更新:晚上 11:12

对于数字 4,我在网关后端实现了一个休息客户端。就功能而言,它工作正常。但是,在后端使用 rest 客户端时,客户端请求网关,网关反过来请求微服务,获取响应并将其返回给客户端。这种网关的双向参与是昂贵的。顺便说一句,这也解决了第 3 个问题。

对于使用其他语言或技术的网关,是否还有其他更好的解决方案可以提供开箱即用的鲁棒性?

0 投票
1 回答
453 浏览

aws-lambda - 如何使用 api.ai + webhook + lambda

我正在开发一个聊天机器人,我正在测试如何使用这些技术。我的想法是使用链接到API.ai的Facebook Messenger并从API.ai使用Webhook发送到Amazon API Gateway + Lambda以使用DynamoDB执行一些任务。

如果我有一个与API.ai关联的 url ( API Gateway ),我的问题是在Webhook中(这是我第一次使用它) 。当不同的Intent需要时,我会调用不同的Lambda函数。也就是说:

Intent1 -> API 网关 -> Lambda1

Intent2 -> API 网关 -> Lambda2

我认为,因为它是一个可以在API.ai中关联的 url ( API Gateway ) 。是否应该将Lambda函数用作过滤器?

Intention1 -> API 网关 -> LambdaFilter -> Lambda1

Intention2 -> API 网关 -> LambdaFilter -> Lambda2

我感谢任何帮助和建议。

0 投票
1 回答
1564 浏览

php - 如何使用邮递员测试 Kong API?

我是 api-gateway 技术的新手,现在我开始为我的下一个项目学习它,尤其是 Kong API Gateway。我已经阅读了文档,但我仍然对如何使用邮递员测试 API 感到困惑。有一种方法可以使用curl这样的方法来测试 kong:

为什么我们仍然需要 passlocalhost:8000而不是 just example.com?如何与邮递员一起使用它?header这个配置是什么意思?

0 投票
1 回答
858 浏览

microservices - Zuul - 单点故障

Zuul习惯于使用Eureka/Edge Services突出是单点故障?有什么办法可以使这种可扩展性和弹性?

0 投票
0 回答
776 浏览

spring - Spring Boot API Gateway 给出错误,例如找不到微服务的负载均衡器

我是 eureka 的 Spring Boot 应用程序的新手。在使用带有 eureka 和 docker 的 API Gateway 进行以下配置时,我遇到了异常。

API-Gateway 的 Bootstrap.yml

码头工人-compose.yml

门户网站的 bootstrap.yml

用户的 bootstrap.yml

使用此配置,由于找不到微服务的负载均衡器,我遇到了异常:web-portal。建议一些解决方案来解决这个问题,我到处搜索,但我没有得到解决方案。上述异常的堆栈跟踪是:

0 投票
1 回答
552 浏览

grpc - Grpc 和 API 网关

我正在考虑将我的后端 rest api 微服务转移到 grpc 服务器。我使用 tyk 作为 api 网关来路由 http 请求。api网关如何处理grpc请求?

0 投票
1 回答
3369 浏览

amazon-web-services - AWS DynamoDB UnknownOperationException

我已经尝试设置一个非常简单的表格,就像在这个例子中一样,但它不起作用。当我在 API Gateway 的 AWS 控制台中对其进行测试时,我总是得到以下响应:

转换前的端点响应正文:{"__type":"com.amazon.coral.service#UnknownOperationException"}

我的映射表如下所示:

我的 Requestbody 看起来像这样。

我究竟做错了什么?

感谢您的帮助。周末愉快。

娜塔莉