Пример Angularjs Tour of Heroes, как реализовать веб-сервер API - PullRequest
0 голосов
/ 25 октября 2018

Я новичок в Angular, я использовал код с PHP и немного JavaScript.Итак, я прочитал пример кода Tour of Heroes и до сих пор не понимаю, что такое HttpClient.Предположим, я собираюсь подготовить сервер веб-API с использованием MongoDB и Node.js.Как подготовить код для приема запроса API из примера Tour of Heroes?Любой пример кода о том, как это сделать?

Также в примере Tour of Heroes - часть в hero.service.ts, которая выполняет большинство процессов http.

export class HeroService {

   private heroesUrl = 'api/heroes';  // URL to web api

Где находитсяэто «api / heroes» относится к?Я знаю, что "in-memory-data.service.ts" будет обрабатывать все запросы http.Но когда я вижу код внутри, он выглядит слишком просто.Можете ли вы объяснить, как "in-memory-data.service.ts" предоставляют данные, необходимые для запроса API.Например, функция поиска героя:

searchHeroes(term: string): Observable<Hero[]> {
  if (!term.trim()) {
    // if not search term, return empty hero array.
    return of([]);
  }
  return this.http.get<Hero[]>(`${this.heroesUrl}/?name=${term}`).pipe(
    tap(_ => this.log(`found heroes matching "${term}"`)),
    catchError(this.handleError<Hero[]>('searchHeroes', []))
  );
}

Функция использует «api / heroes» и предоставляет термин запроса (имя героя) и возвращает массив Hero.Я просто не понимаю, почему http.get может посмотреть на api / heroes и получить массив Hero.Где связь между api / heroes и "in-memory-data.service.ts"?Спасибо.

1 Ответ

0 голосов
/ 26 октября 2018

Для тех, кто хочет разработать сервер API для предоставления контента Hero, вы можете сначала прочитать статью ниже, если хотите разработать сервер API только с nodejs:

Узел JS без фреймворка

Если вы хотите разработать API-сервер с Node.js и Express, проверьте ссылку ниже:

Medium.com, создайте оставшийся API с помощью node.js и express.js

Читая вышеуказанную статью, вы сможете отправлять данные базы данных клиенту.И чтобы отправить объект героя, вы можете обернуть его в Json.

...