我正在尝试将Ocelot用作通向K8S集群的网关,并且理想情况下希望使用就绪/活跃性探针。但是我尝试让Ocelot处理探针端点的每种方式都会导致问题:

  • 如果不为其创建重新路由,Ocelot将返回404
  • 如果我将端点重新路由回自身,Ocelot将陷入无限循环
  • 如果我将端点重新路由到本身未重新路由的现有位置,则Ocelot返回404

  • 有没有一种方法可以使Ocelot允许访问同一服务内的端点?

    最佳答案

    我发现了如何做到这一点。这实际上非常简单,您只需在管道中比Ocelot中间件更早地注入(inject)MVC​​中间件,并且MVC将在Ocelot看到它们之前处理对内部端点的请求。

    app.UseMvc();
    app.UseOcelot().Wait();
    

    资料来源:https://github.com/ThreeMammals/Ocelot/issues/681

    关于c# - 如何通过Ocelot API Gateway重新路由来支持Kubernetes就绪/活跃性调查?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53086681/

    10-12 04:13