问题标签 [ocelot]
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.
c# - 如何在 Ocelot 中实现 cors 标头
我在我的新项目中实现了 ocelot,我使用 ocelot 一次性创建了我的服务的集成,但是当我尝试在我的 api 网关中发布、放置、路径或删除资源时,浏览器会向我显示消息
无法加载http://localhost:8080/api/prospects:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问源“ http://localhost:8888 ”。响应具有 HTTP 状态代码 404。
我尝试在安装和实现包 Microsoft.AspNetCore.Cors 的网关中配置 cors
docker - 身份服务器 4 和 Ocelot 与 Docker 的集成
我正在尝试将 Ocelot API 网关与 ID4 集成。根据 Ocelot文档,我们可以使用外部 id 服务器https://whereyouridentityserverlives.com验证令牌,现在,我将 ID 服务器和 GateWay 集成到同一个 docker compose 中,
在我的网关中,我正在配置
一切正常,现在在令牌验证时出现错误,没有这样的设备或地址
很可能,网关服务器无法连接 id4,因此无法获取发现文档。
日志文件的相关部分
我错过了什么?
api - 使用 OCELOT 的 API 网关 - 错误 - 无法启动 Ocelot
我是 API 网关的新手,请按照以下链接开始。
https://www.c-sharpcorner.com/article/building-api-gateway-using-ocelot-in-asp-net-core/
当我尝试运行应用程序时,它会在以下代码行中的 Startup.cs 文件中引发错误。
启动.cs
错误:
无法启动Ocelot,错误为:不使用服务发现时DownstreamHostAndPorts必须设置且不为空否则Ocelot找不到你的服务!,不使用服务发现时DownstreamHostAndPorts必须设置且不为空否则Ocelot找不到你的服务!,不使用时使用服务发现 DownstreamHostAndPorts 必须设置且不能为空,否则 Ocelot 找不到你的服务!
配置.json
azure - 带有 Ocelot API 网关 404 错误的 Azure 服务结构
我创建了具有多个无状态和有状态服务的 Azure 服务结构应用程序。我所有的有状态服务都可以通过 Web Api 无状态服务访问。现在我已将 Ocelot API 网关添加到另一个无状态 Web api 服务,我只想从该网关访问我的所有服务。现在,当我尝试从我的 API 网关服务访问服务时,它给了我 404。
豹猫配置
我在这里缺少什么?
c# - Ocelot API Gateway - 分配微服务的最佳 url 模板?
我们公司有许多微服务。我们还使用 Api Gateway 模式来路由这些微服务,实际上我们为此使用了Ocelot。应用于这些微服务的最佳 URL 格式是什么?
重要的是我们为我们的服务使用了 Rest 架构
例如,我现在有这些模板:
api.example.com/microservice1/{控制器}
example.com/api/microservice1/{controller}
你有什么意见?
c# - API Gateway Ocelot 不重定向
使用 Ocelot 构建微服务架构 我开始在单独的解决方案中构建测试服务。一切正常,我可以得到对https://localhost:5101/service/stats/collected
.
然后在另一个解决方案中,我正在制作一个全新的 webapi 项目。然后我跟着Ocelot官网的入门。
配置 .json 文件以将其用作 GW 如果我尝试点击https://localhost:5001/api/stats/collected
,我从项目中获得 500,但我不知道为什么?
这里是 APIGW 的主要文件:
豹猫.json
程序.cs
启动.cs
更新:
我发现通过options
在方法中注释来禁用每个项目的 SSLUseKestrel
会使我的 GW 工作。如何设置它以在我的 GW 和服务之间建立安全连接?本地主机和产品?
docker - API Gateway w/WebAPI 端点在同一用户桥接网络上。WebAPI 需要 SSL?
如果我在 docker 容器中有一个 api 网关,它与同一用户桥接网络上的第二个 webapi docker 容器通信,是否有任何理由在 api 网关和 docker 容器之间配置 ssl?
在 webapi 和 api 网关之间只使用端口 80 是否 100% 安全?
客户端通过 ssl 连接到 api 网关,那么出于某种原因,您是否必须一直继续使用 ssl 到 webapi?
假设我不需要 SSL:如果从 webapi 我想从 OAUTH2 访问令牌中读取一些自定义声明,这会改变事情吗?
我问的原因是因为我已经设置了一个 Ocelot api 网关和 webapi,它们通过 http 进行良好通信,但我无法让它们通过 webapi 的 ssl 端点进行通信,但如果它没有,我不会担心没关系。
asp.net-core - 我应该向 kubernetes 集群上的 consul 注册 pod 或 kubernete 服务吗
我已经在kubernetes集群上部署了ocelot和consul。Ocelot 充当 api 网关,将请求分发给内部服务。而 consul 负责服务发现和健康检查。(顺便说一句,我按照 consul 的官方文档将 consul 部署在 kubernetes 集群上)。
而我的服务(即asp.net core webapi)也部署到了kubernetes集群,有3个副本。我没有创建 kubernete 服务对象,因为这些 pod 只会被同一集群中的 ocelot 消耗。
架构如下所示:
此外,IMO,consul 可以在 pod 死亡时取消注册 pod(webapi)。所以我认为不需要创建 kubernete 服务对象
现在我的问题是:在 pod 启动时将每个 pod(webapi) 注册到 consul 是否正确?或者我应该在这些 pod (webapi) 前面创建一个 kubernete 服务对象并将服务对象注册到领事?
asp.net-core - 是否可以为 SwaggerUI 动态添加 SwaggerEndpoints?
我们正在 .NET Core 中构建面向服务的架构。我们决定使用 Ocelot 作为我们的 API 网关。我已将 Ocelot 与 Consul 集成以进行服务发现。现在我正在尝试为所有下游服务创建一个统一的 Swagger UI。
在服务发现之前,我们有这样的 Swagger 设置:
在 Swagger UI 上,这提供了“选择规范”下拉菜单。开发人员喜欢这个功能,我们希望保留它。但是,既然我们已经删除了有利于服务发现的手动配置,我们还希望动态更新这些端点。
使用当前可用的 Swagger 解决方案,这可能吗?我还没有看到与服务发现或能够动态配置 UI 相关的任何内容。想法和建议?
更新
我想出了一个方法来做到这一点。这有点hack-ish,我希望有一种方法可以做到这一点,而不是那么笨拙。
c# - 使用 Ocelot (7.0.4) 重新路由错误 asp.net Core
在这里,我试图将我的 UpstreamPathTemplate 从查询字符串重新路由到 DownstreamPathTemplate,
这是我发送到我的帐户管理服务的查询字符串,以便使用 ocelot 重新路由到我的代理服务。
这是我在代理服务中用于接收重新路由路径的控制器方法
但它不起作用。在我的 OUTPUT 窗口中显示消息:无法找到路径的下游路由:/api/account/user/list/GetPagedAgents,动词:GET
这意味着这里它把我的 UpstreamPath 作为
这里缺少参数。
任何帮助将不胜感激。谢谢