Параметры пути к хостингу Firebase в URL не работают - PullRequest
0 голосов
/ 10 мая 2018

Мне нужно обслуживать динамический контент, используя параметры пути для получения id из URL при размещении на firebase. Например:

mydomain.com / приложения / 4480023

В этом сценарии я хотел бы извлечь 4480023 в качестве идентификатора ресурса, который я ищу. Я попробовал следующие изменения в файле firebase.json:

{
  "hosting": {
    "public": "public",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      },
      {
        "source": "/apps/**",
        "destination": "/apps.html"
      }
    ],
    "cleanUrls": true
  }
}

В этом случае я могу использовать функцию javascript для получения идентификатора из URL-адреса, когда пользователь просматривает этот ресурс. Моя проблема в том, что это переписывание не работает, и оно направляет пользователя на страницу index.html, и все файлы CSS / JS в конечном итоге не работают должным образом.

Как я могу изменить это, чтобы включить эту функцию?

1 Ответ

0 голосов
/ 13 мая 2018

Переписанные строки проверяются по порядку. Это означает, что ваша первая перезапись, которая соответствует всем запросам, всегда будет обслуживаться index.html.

Все, что вам нужно сделать, это изменить порядок переписываний, чтобы /apps/** имел возможность сопоставления до того, как /** захватит все остальное.

"rewrites": [
  {
    "source": "/apps/**",
    "destination": "/apps.html"
  },
  {
    "source": "**",
    "destination": "/index.html"
  }
]
...