mirage.js не будет работать с путями под URL (только с корневым путем) в angular

Mirage соответствует определенным маршрутам, когда внутренние вызовы выполняются через корневой URL (localhost:4200/), но когда мы выполняем внутренний вызов на подстранице, ea: localhost:4200/process, это не сработает. При отладке кода миража он будет пытаться сопоставить его, добавив к URL-адресу префикс "процесс". Таким образом, если вызов BE - это "api/portal/affiliates/", он попытается сопоставить "process / api / portal / affiliates/", что не удастся, так как не существует подходящего пути. Есть идеи, как это решить.

Мы используем mirage.js в angular 9. Конфигурация roue mirage.js:

    routes() {
      this.passthrough();

      this.namespace = '/api/portal;
      this.get('affiliates', (schema, request) => {
        return schema.db.affiliates;
      })
}

1 ответ

Я интегрирую мираж в Angular-9.

Я столкнулся с той же проблемой. Каждый раз, когда страница обновляется по любому URL-адресу с некоторыми маршрутами, она выдает ошибку, что mirage не может найти маршрут.

Дело было не в мираже. Проблема заключалась в том, как я называл API.

Вместо того, чтобы делать

this.http.get('api/portal')

попробуйте сделать как показано ниже

this.http.get('/api/portal')

добавлять /(косая черта) при вызове API. Это решило мою проблему. Дайте мне знать, если проблема все еще не решена.

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