问题标签 [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 投票
1 回答
309 浏览

microservices - API Gateway 合并结果

我有单独的身份验证服务和产品服务。我需要在服务前面有一个 api 网关,并为受保护的 url 执行此功能:

  • 调用身份验证服务并验证用户令牌
  • 如果令牌有效,则将用户 ID 附加到请求中并向产品服务发出请求。

是否有任何 API 网关支持这种自定义逻辑来处理请求?

谢谢。

0 投票
2 回答
7590 浏览

swagger - 我怎样才能将微服务招摇聚合成一个招摇

我正在尝试在我的微服务项目中生成一个 swagger,在 Api Gateway 中将所有服务 swagger 聚合为一个。为了实现这一点,我正在关注下一个教程https://objectpartners.com/2017/09/28/aggregate-services-into-a-single-swagger

这里的问题是,当我尝试设置绝对 URL 时,我收到的输出是无法加载 API 定义。undefined http://localhost:8070/apihttp://localhost:8081/api/v2/api-docs其中localhost:8070/api是 api 网关的基本 URL,而localhost:8081/api/v2/api- docs是微服务的 swagger 的 docs URL。

这是我的代码:

招摇配置

资源

文档控制器

最后,application.yml

还有一些可以帮助理解问题的图像:

Api 网关 Swagger URL Api 网关招摇网址

微服务 api-docs URL 微服务 api-docs URL

0 投票
1 回答
1422 浏览

postgresql - Docker Kong 容器在迁移后停止

我有一个在 docker 容器中运行的 nodejs API,我想使用 Kong 作为 API-Gateway。Kong 将在另一个 docker 容器中运行。当我使用 docker-compose 启动 API 容器和 Kong 容器时,Kong 容器会抛出错误消息;

码头工人撰写文件:

因此,在收到该错误后,我将“命令:kong 迁移”添加到 kong 服务。这次它进行了迁移。但迁移后,kong 容器停止,我无法重新启动它。

我错过了什么吗?

0 投票
1 回答
2386 浏览

docker - 通过 docker 访问的 Swagger UI 不起作用

我有两个将通过 ApiGateway 访问的微服务(交易和支付),每个微服务都在一个 docker 容器内。此外,我已经实现了自己的 SwaggerResourcesProvider 以便从一个点访问两个 Swagger:ApiGateway Swagger,正如您在这个问题中看到的那样:Single Swagger

为了在每个微服务中启用 CORS,它们(包括 ApiGateway)都具有以下代码:

如果我使用 IDE 执行每个微服务,我可以毫无问题地从 ApiGateway 访问 Swagger 微服务,如您在此处看到的(ApiGateway 在 8070 端口上执行):

在本地执行

但是,当我使用 docker-compose 执行它们并尝试通过 ApiGateway 访问任何微服务的 Swagger(将内部端口映射到 8070)时,我收到以下错误:

使用 docker 执行

奇怪的是,如果我使用 bash 进入 ApiGateway docker 内部,并执行curl transactionservice/api/v2/api-docs然后我收到相应的 json,所以 ApiGateway 的 docker 正在访问其余部分的 Swagger码头工人,但它无法从我的网络浏览器访问。

问题:为什么 Swagger 在使用 docker 执行时无法访问其他 Swagger?

0 投票
0 回答
1906 浏览

spring-boot - Spring Cloud Gateway:监控示例代码的运行状况和位置

我对 Spring Cloud Gateway 还很陌生,我正在考虑将它用作我的应用程序的主要网关。

我想知道 Spring 云网关是否提供了监控网关健康状况的能力(并且还监控具有 /health 端点的微服务的健康状况)?

另外我想知道 Spring 云网关是否也支持 API 版本控制?

如果有人能指出我可以尝试这些事情的示例代码的方向,那将是真正好的?

谢谢

0 投票
0 回答
1519 浏览

node.js - 通过 API Gateway + Lambda 发送 PNG 响应

我刚刚阅读了很多论坛消息和一些 stackoverflow 消息。我什么都试过了。但是,我无法通过 API Gateway 发送 PNG 响应。我在 API Gateway 中使用 LAMBDA_PROXY。

在 Lambda 中,我有这样的代码:

二进制媒体类型:

内容处理类型:

当我在浏览器上打开 API Gateway URL 时,我看到 image/png 作为内容类型。但响应是编码的。所以,浏览器无法解释它。我看到黑屏。

我发送了这样的 CURL 请求:{code}curl -H "Accept: image/png" https://xxx.execute-api.eu-central-1.amazonaws.com/testimage/myimage > /opt/1。 png{代码}

这个也不行。

怎么了?你能帮助我吗?

0 投票
0 回答
175 浏览

amazon-web-services - 用于限制 AWS API Gateway 分阶段的 IAM 策略

我有一个具有不同阶段(proddev)的 API 网关,一个用于生产,另一个用于开发。

为了限制对prod阶段的访问和部署,我为开发用户设置了以下 IAM 策略,

6mvx7om366API ID在哪里。

这在控制台中显示了用户的prod阶段,但限制编辑它的任何配置。(对此感到高兴)

但是开发用户随后能够对prod阶段进行部署。我确实希望有一个类似的arn,

"arn:aws:apigateway:eu-central-1::/restapis/6mvx7om366/deployments/stages/dev"

不过好像没有。有什么解决方法吗?

0 投票
1 回答
799 浏览

api-gateway - 无法调用阿里云API

我正在使用阿里云。我已按照文档使用 API 查询组。

例如:我使用http://apigateway.cn-hangzhou.aliyuncs.com?Action=DescribeApiGroup &GroupId=xxx&AccessKeyId=xxx.

我得到了错误InvalidVersion: Specified parameter Version is not valid.

如果您遇到此错误,请帮助我如何调用 API。谢谢

0 投票
1 回答
494 浏览

architecture - 如何在微服务和 API 网关架构中对不同的配置文件进行身份验证和授权

我想构建一个微服务架构。它应该有 13 个微服务和 3 个客户端(2 个 Web 和 1 个移动)。

在我们的场景中,我们有:

  • 员工:对特定和共享服务的访问权及其凭据存储在 Active Directory 中;
  • 管理员:他们是具有完全访问权限的员工。他们拥有特定的共享服务,并且他们的凭据存储在 Active Directory 中;
  • 客户:对特定和共享服务的访问权及其凭据存储在身份微服务中。

我们将拥有一个 API 网关。

每个请求都由 API Gateway 处理,API Gateway 应该(或调用负责人)检查请求的令牌是否有效,识别它是客户、员工还是管理员,并检查该用户是否有权访问请求 API/微服务。

我对这个解决方案有一些误解,所以我很感激一些帮助:

  • API 网关的职责是什么?
  • 身份微服务职责是什么?
  • 如何管理定义员工、客户和管理员可以访问或不可以访问哪些 API/微服务?
  • 如何识别给定用户是客户、员工还是管理员?
0 投票
1 回答
71 浏览

wso2 - 如何阻止来自 WSO2 API 网关的流量并只允许来自本地网关的流量?

World Bank API 是在 API Cloud 中创建的,它可以从 API 控制台以及通过本地网关的 curl 命令调用。

确保消费者应用程序只能通过本地网关调用的推荐做法是什么?