Угловой веб — API в памяти-Как изменить приоритет на локальный сервер HTTP, а затем на веб-API в памяти

#angular #angular-in-memory-web-api

Вопрос:

Я работаю с веб-API Angular в памяти для выполнения вызовов API локально без реальных API RESTful из моего Java-приложения. Я создал URL-адреса в службе данных в памяти так же, как URL-адреса API LIVE RESTful.

 export class UserMockService {

  SERVER_URL: string = 'http://localhost:8080/api/users';
  constructor(private httpClient: HttpClient) { }

  public getUsers(){
    return this.httpClient.get(this.SERVER_URL);
  }
  public getUser(id) {
    return this.httpClient.get(`${this.SERVER_URL}?userId=`   userNumber);
  }
 

Вот моя служба данных, которая реализует модуль веб-API в памяти, возвращающий созданную базу данных пользователей.

 export class UserMockApiService implements InMemoryWebApiModule {
  constructor() { }
  createDb(){
    const users = [
      {
        id: 1001,
      },    {
        id: 2001,
      }     ];
    return {users};
  }
 

Я знаю о конфигурации passThruUnknownUrl: true, которая может искать мой API RESTful, если она не может найти в API памяти точный путь, который не совпадает.

Теперь у меня есть собственное Java-приложение RESTful API, доступное для получения списка пользователей по тому же URL http://localhost:8080/api/users

Теперь я хочу использовать свой JAVA API для получения списка пользователей вместо веб-API в памяти, так как он готов получить список реальных пользователей.

Но для других API, таких как getUserById, мой JAVA API пока недоступен. Поэтому я хотел бы использовать для них веб-API в памяти.

Какой бы API ни был доступен в моем Java-приложении, я хочу, чтобы мои Http-вызовы выполнялись и сначала изучали это, если оно недоступно в моем Java-приложении, тогда ему нужно только изучить веб-API в памяти.

Есть ли какая-либо конфигурация для того, чтобы это имело какой-то приоритет.