Api-шлюз производство

У меня есть немного apis и api-gateway перед ними. Это Ocelot, это моя конфигурация в моей локальной среде:

  "ReRoutes": [
    {
      "DownstreamPathTemplate": "/{everything}",
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost",
          "Port": 5000
        }
      ],
      "UpstreamPathTemplate": "/api1/{everything}",
      "UpstreamHttpMethod": [ "Get", "Post" ]
    },

API работает как Kestrel. Нет докера. В производственной системе, однако, он должен быть установлен в IIS

Проблема заключается в следующем: в моей среде locan все apis, nad шлюз api работают на localhost, nad имеют порт. Но на сервере они устанавливаются как веб-сайты, так и приложения внутри веб-сайта. поэтому, если адрес веб-сайта - xyz.com, адрес api1 - xyz.com/api1. и это доступно. Я не хочу, чтобы он был доступен, только через шлюз API. Первое, что нужно сделать, это сделать только через API Gateyas.

И вторая проблема, это не работает. Это моя конфигурация на сервере:

  "ReRoutes": [
    {
      "DownstreamPathTemplate": "/Api1Api/{everything}",
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost", <-- here I tried xyz.com too
          "Port": 80
        }
      ],
      "UpstreamPathTemplate": "/Api1/{everything}",
      "UpstreamHttpMethod": [ "Get", "Post" ]
    },

Если я захожу на xyz.com/Api1Api, он работает, но я не хочу, чтобы он работал, но если я захожу на xyz.com/ApiGateway/Api1, он не работает, но я хочу, чтобы он работал оттуда

0 ответов

Другие вопросы по тегам