1
00:00:03,450 --> 00:00:08,610
В этом упражнении мы будем использовать Угловой HTTP-клиент для

2
00:00:08,610 --> 00:00:13,870
общаться с сервером JSON, который мы уже установили в предыдущем упражнении.

3
00:00:13,870 --> 00:00:21,270
Теперь мы сможем скачать данные с сервера в наше угловое приложение с помощью

4
00:00:21,270 --> 00:00:25,200
клиента HTTP, а затем использовать данные для того, чтобы

5
00:00:25,200 --> 00:00:29,755
построить различные представления в наших компонентах.

6
00:00:29,755 --> 00:00:34,050
В этом упражнении мы собираемся перенастроить службу блюд, чтобы иметь возможность

7
00:00:34,050 --> 00:00:38,960
идти и получать данные о блюдах с сервера JSON.

8
00:00:38,960 --> 00:00:40,545
В рамках вашего задания

9
00:00:40,545 --> 00:00:41,920
вы завершите оставшиеся два,

10
00:00:41,920 --> 00:00:44,735
сервис лидера и сервис продвижения.

11
00:00:44,735 --> 00:00:51,810
Мы посмотрим, как мы можем использовать HTTP-клиент, который вернет наблюдаемый нам.

12
00:00:51,810 --> 00:00:55,580
Мы уже перенастроили наше приложение,

13
00:00:55,580 --> 00:01:02,530
особенно сервис, чтобы иметь возможность доставлять наблюдаемые к нашим компонентам.

14
00:01:02,530 --> 00:01:07,070
В рамках наших компонентов мы подписываемся на эти наблюдаемые.

15
00:01:07,070 --> 00:01:10,745
Итак, основная часть настройки

16
00:01:10,745 --> 00:01:15,310
для получения данных от сервиса к компоненту уже есть.

17
00:01:15,310 --> 00:01:22,195
Мы немного улучшим его, чтобы справиться с ошибками в следующем упражнении.

18
00:01:22,195 --> 00:01:27,290
Наш первый шаг в подготовке углового приложения для использования

19
00:01:27,290 --> 00:01:31,040
клиента HTTP для доступа к серверу является

20
00:01:31,040 --> 00:01:35,005
настроить наше приложение с HTTPClientModule.

21
00:01:35,005 --> 00:01:38,505
Итак, чтобы сделать это, откройте app.module.ts.

22
00:01:38,505 --> 00:01:42,030
Тогда, здесь, давайте импортировать

23
00:01:42,030 --> 00:01:57,460
HTTPClientModule из угловой/общего/HTTP.

24
00:02:00,410 --> 00:02:02,700
После того, как мы импортируем это,

25
00:02:02,700 --> 00:02:06,625
, то мы будем идти вперед и настроить декоратор NgModule

26
00:02:06,625 --> 00:02:12,510
в импорте с HTTPClientModule.

27
00:02:14,890 --> 00:02:23,640
Теперь наше приложение готово использовать HTTPClientModule для доступа к серверу.

28
00:02:23,640 --> 00:02:28,880
Теперь убедитесь, что сервер JSON работает и

29
00:02:28,880 --> 00:02:31,190
обслуживает данные, чтобы наше приложение могло

30
00:02:31,190 --> 00:02:34,520
взаимодействовать с серверным приложением JSON.

31
00:02:34,520 --> 00:02:39,055
Теперь, когда мы получаем доступ к данным со стороны сервера,

32
00:02:39,055 --> 00:02:46,220
это хорошая практика, чтобы создать специальное значение, которое указывает на

33
00:02:46,220 --> 00:02:50,840
baseURL вашего сервера, так что

34
00:02:50,840 --> 00:02:55,845
, что он может быть настроен в вашем угловом приложении по мере необходимости.

35
00:02:55,845 --> 00:02:58,325
Итак, перейдя в общую папку,

36
00:02:58,325 --> 00:03:05,345
я собираюсь создать здесь новый файл с именем baseurl.ts.

37
00:03:05,345 --> 00:03:07,055
Затем, в этом файле,

38
00:03:07,055 --> 00:03:15,995
я буду включать константу и экспортировать ее и константу с именем baseURL,

39
00:03:15,995 --> 00:03:24,355
, который я установлю в HTTP: //localhost:3000.

40
00:03:24,355 --> 00:03:31,455
Итак, как вы помните, это baseURL, на котором доступен мой сервер JSON.

41
00:03:31,455 --> 00:03:35,665
Итак, локальный: 3000/, там.

42
00:03:35,665 --> 00:03:37,565
Итак, с этим

43
00:03:37,565 --> 00:03:40,210
позвольте мне сохранить изменения в baseURL.

44
00:03:40,210 --> 00:03:47,105
Теперь угловой предоставляет способ предоставления значений, таких как

45
00:03:47,105 --> 00:03:54,990
, для остальной части вашего приложения, настраивая поставщика в вашем модуле приложения.

46
00:03:54,990 --> 00:03:57,510
Итак, перейдя к модулю приложения

47
00:03:57,510 --> 00:04:04,545
, чтобы позволить нам предоставить этот конкретный baseURL,

48
00:04:04,545 --> 00:04:10,870
мы собираемся сначала импортировать значение baseURL в наше угловое приложение.

49
00:04:10,870 --> 00:04:27,380
Итак, я бы сказал, что импортируйте baseURL из shared/baseurl.

50
00:04:27,650 --> 00:04:31,790
Это значение теперь может быть доступно

51
00:04:31,790 --> 00:04:35,625
остальной части моего приложения, перейдя к поставщикам.

52
00:04:35,625 --> 00:04:38,270
Затем, в дополнение к LeaderService,

53
00:04:38,270 --> 00:04:42,150
, если я настрою такое значение,

54
00:04:42,150 --> 00:04:45,965
я бы сказал предоставить

55
00:04:45,965 --> 00:04:56,070
, а затем baseURL, useValue.

56
00:04:56,540 --> 00:05:03,355
Таким образом, я буду предоставлять это значение baseURL как

57
00:05:03,355 --> 00:05:11,310
поставщика значений из модуля приложения в остальную часть моего углового приложения.

58
00:05:11,310 --> 00:05:12,835
На следующем шаге

59
00:05:12,835 --> 00:05:19,400
мы собираемся настроить наш DishService, чтобы позволить ему получить доступ на стороне сервера,

60
00:05:19,400 --> 00:05:21,830
, а затем получить данные со стороны сервера,

61
00:05:21,830 --> 00:05:25,475
, а затем сделать данные доступными для наших компонентов.

62
00:05:25,475 --> 00:05:30,170
Теперь мы пойдем в DishService.

63
00:05:30,170 --> 00:05:32,140
Тогда, в DishService,

64
00:05:32,140 --> 00:05:37,790
эти блюда больше не нужны из локального файла там.

65
00:05:37,790 --> 00:05:40,970
Я собираюсь загрузить эти данные со стороны сервера.

66
00:05:40,970 --> 00:05:46,475
Итак, я собираюсь удалить это, а затем добавить в импорт

67
00:05:46,475 --> 00:05:55,460
HTTPClient из углового,

68
00:05:55,460 --> 00:06:00,150
каждый общий HTTP,

69
00:06:01,240 --> 00:06:10,130
импортировать baseURL из,

70
00:06:10,130 --> 00:06:19,015
вспомнить, что это в shared/baseurl.

71
00:06:19,015 --> 00:06:21,715
Теперь, в рамках моего DishService,

72
00:06:21,715 --> 00:06:24,960
я собираюсь пойти и получить данные со стороны сервера.

73
00:06:24,960 --> 00:06:27,510
Итак, в конструкторе

74
00:06:27,510 --> 00:06:31,740
я собираюсь обновить конструктор путем

75
00:06:32,260 --> 00:06:39,615
, введя HTTPClient в мой конструктор здесь.

76
00:06:39,615 --> 00:06:45,275
Итак, теперь мой DishService должен быть настроен на

77
00:06:45,275 --> 00:06:50,990
получить данные со стороны сервера и вернуть данные в мое приложение.

78
00:06:50,990 --> 00:06:52,340
Теперь вы заметите, что

79
00:06:52,340 --> 00:06:56,915
метод getDishes уже настроен для возврата наблюдаемого компоненту.

80
00:06:56,915 --> 00:06:58,980
Итак, эта часть уже настроена.

81
00:06:58,980 --> 00:07:06,080
Теперь, что это собирается вернуть, это то, что он получает от

82
00:07:06,080 --> 00:07:13,230
метод HTTP get

83
00:07:13,230 --> 00:07:17,760
, который мы будем называть стороне сервера.

84
00:07:17,760 --> 00:07:21,015
Итак, для того, чтобы вызвать серверную сторону,

85
00:07:21,015 --> 00:07:23,775
мне придется поставлять,

86
00:07:23,775 --> 00:07:25,395
в рамках метода get,

87
00:07:25,395 --> 00:07:30,750
baseURL, который у меня есть

88
00:07:30,750 --> 00:07:36,020
уже получены, а затем блюда.

89
00:07:36,020 --> 00:07:44,000
Итак, таким образом, метод HTTP get будет получать данные от localhost: 3000/dists.

90
00:07:44,610 --> 00:07:49,760
Итак, это URL-адрес на стороне сервера от

91
00:07:49,760 --> 00:07:54,995
, который вы можете получить данные о блюдах здесь. Вот оно.

92
00:07:54,995 --> 00:08:01,430
Мой сервер будет предоставлять данные в виде

93
00:08:01,430 --> 00:08:07,660
наблюдаемого для этой службы при вызове метода HTTP get,

94
00:08:07,660 --> 00:08:14,495
и который будет возвращен компоненту через метод getDishes.

95
00:08:14,495 --> 00:08:19,580
Вот об этом. Теперь моя служба настроена на то, чтобы пойти и

96
00:08:19,580 --> 00:08:24,525
извлекать данные со стороны сервера, а затем возвращать данные моему компоненту.

97
00:08:24,525 --> 00:08:29,670
Я собираюсь обновить оставшиеся методы также аналогичным образом.

98
00:08:29,670 --> 00:08:36,230
Итак, что я сделаю для следующего метода для метода getDish,

99
00:08:36,230 --> 00:08:38,760
Я собираюсь скопировать

100
00:08:39,190 --> 00:08:48,015
эту часть, а затем просто вставить ее на место здесь,

101
00:08:48,015 --> 00:08:49,890
, а затем мы отредактируем это.

102
00:08:49,890 --> 00:08:54,830
Теперь, когда вам нужно получить за конкретное блюдо,

103
00:08:54,830 --> 00:08:58,865
у вас есть ID блюда, которое вам доступно.

104
00:08:58,865 --> 00:09:03,870
Итак, мы скажем, getDish ID доступен в качестве параметра.

105
00:09:03,870 --> 00:09:05,745
Итак, к посуде

106
00:09:05,745 --> 00:09:10,130
я собираюсь добавить ID в качестве другого параметра здесь.

107
00:09:10,130 --> 00:09:13,250
Теперь, когда я получаю ответ, а затем возвращаю

108
00:09:13,250 --> 00:09:18,905
его компоненту через вызов метода getDish.

109
00:09:18,905 --> 00:09:21,470
Аналогично, для избранного блюда

110
00:09:21,470 --> 00:09:26,355
это будет немного интересный способ его настройки.

111
00:09:26,355 --> 00:09:28,945
Теперь, для избранного блюда,

112
00:09:28,945 --> 00:09:32,705
, когда вам нужно получить доступ к данным со стороны сервера,

113
00:09:32,705 --> 00:09:34,785
то, что я собираюсь сделать, это, теперь,

114
00:09:34,785 --> 00:09:41,140
, когда я спрашиваю о блюде, теперь,

115
00:09:41,140 --> 00:09:45,410
способ настройки моей серверной стороны заключается в том, что я могу отправить

116
00:09:45,410 --> 00:09:51,580
параметр запроса в моем URL, чтобы я мог сказать блюда?

117
00:09:51,580 --> 00:09:56,615
, а затем сказать, что признакам равным true.

118
00:09:56,615 --> 00:10:00,290
Таким образом, мой сервер вернет

119
00:10:00,290 --> 00:10:06,840
только те объекты, для которых флаг выставлен в значение true,

120
00:10:06,840 --> 00:10:09,965
или finatures-свойство установлено в true на стороне сервера.

121
00:10:09,965 --> 00:10:13,770
Теперь, вот как настроена серверная сторона.

122
00:10:13,770 --> 00:10:15,670
Теперь, снова, как только вы получите данные,

123
00:10:15,670 --> 00:10:20,390
, то вы просто сопоставите значение, а затем возвращаете это как

124
00:10:20,390 --> 00:10:25,490
наблюдаемый к моему компоненту через метод get featuring блюдо.

125
00:10:25,490 --> 00:10:30,110
Когда я запрашиваю серверную сторону, используя параметр запроса,

126
00:10:30,110 --> 00:10:34,155
он собирается вернуть массив объектов, которые соответствуют.

127
00:10:34,155 --> 00:10:39,350
В этом случае так получилось, что массив будет содержать ровно один элемент.

128
00:10:39,350 --> 00:10:44,230
Но когда я возвращаю значение после получения результата,

129
00:10:44,230 --> 00:10:51,865
мне нужно также включить нуль там, потому что это массив,

130
00:10:51,865 --> 00:10:55,460
, поэтому мне нужно вернуть первый элемент из массива.

131
00:10:55,460 --> 00:11:00,050
Прежде чем я забуду, позвольте мне импортировать

132
00:11:00,050 --> 00:11:10,770
оператор карты из операторов rxjs.

133
00:11:10,770 --> 00:11:14,200
Теперь, для последнего, getDishIds,

134
00:11:14,200 --> 00:11:17,570
то, что я собираюсь сделать, это использовать тот факт, что у меня уже

135
00:11:17,570 --> 00:11:27,340
есть метод getDishIds, доступный мне.

136
00:11:27,340 --> 00:11:31,705
Итак, когда метод getDishes возвращается,

137
00:11:31,705 --> 00:11:37,610
я собираюсь сопоставить это с оператором карты

138
00:11:41,280 --> 00:12:00,475
как dishes.map, dish.dish id.

139
00:12:00,475 --> 00:12:07,105
Таким образом, я возвращаю только значение, которое мне нужно,

140
00:12:07,105 --> 00:12:10,840
просто идентификаторы блюда через этот метод здесь.

141
00:12:10,840 --> 00:12:12,765
Вот об этом.

142
00:12:12,765 --> 00:12:19,410
Теперь моя служба блюдо полностью обновлена, чтобы пойти и получить данные с сайта

143
00:12:19,410 --> 00:12:27,840
сервера, а затем предоставить данные моим компонентам в моем.

144
00:12:27,840 --> 00:12:30,230
Угловое применение здесь.

145
00:12:30,230 --> 00:12:31,775
На следующем шаге

146
00:12:31,775 --> 00:12:34,645
я собираюсь перейти в компонент меню.

147
00:12:34,645 --> 00:12:37,085
Затем в компоненте меню

148
00:12:37,085 --> 00:12:45,400
я собираюсь использовать интерфейс ввода, который доступен через

149
00:12:45,400 --> 00:12:53,900
угловое ядро, чтобы ввести этот BaseURL, который я получил там.

150
00:12:53,900 --> 00:12:56,340
Итак, как нам это использовать?

151
00:12:56,340 --> 00:13:00,665
В конструкторе моего компонента

152
00:13:00,665 --> 00:13:03,530
я зайду и скажу:

153
00:13:05,520 --> 00:13:12,910
"@Inject" Итак, помните, что мы создали

154
00:13:12,910 --> 00:13:20,675
этот BaseURL в качестве поставщика для этого значения в модуле приложения ранее.

155
00:13:20,675 --> 00:13:27,425
Итак, что BaseURL теперь может быть введен в компонент, как это здесь.

156
00:13:27,425 --> 00:13:29,120
Теперь, когда у вас есть услуга,

157
00:13:29,120 --> 00:13:31,170
вы вводите такие услуги здесь,

158
00:13:31,170 --> 00:13:32,875
, но когда у вас есть значение,

159
00:13:32,875 --> 00:13:38,050
, то вы вводите значение с помощью декоратора "@Inject".

160
00:13:38,050 --> 00:13:45,935
Здесь мы указываем значение поставщика, которое мы указали там.

161
00:13:45,935 --> 00:13:48,720
Мы сказали, предоставить:BaseURL там,

162
00:13:48,720 --> 00:13:50,580
так что это значение, которое мы предоставляем здесь.

163
00:13:50,580 --> 00:13:53,470
Затем я объявляю это как частный BaseURL.

164
00:13:53,470 --> 00:13:55,660
Итак, теперь, в моем коде здесь,

165
00:13:55,660 --> 00:14:02,910
этот BaseURL доступен для настройки того, что мне нужно в моем приложении здесь.

166
00:14:02,910 --> 00:14:04,985
Пока я все еще здесь,

167
00:14:04,985 --> 00:14:14,450
я собираюсь удалить это выбранное блюдо, которое также не используется в моем приложении.

168
00:14:15,300 --> 00:14:21,190
Тогда этот метод также я не использую с моим приложением,

169
00:14:21,190 --> 00:14:25,085
, поэтому позвольте мне немного очистить, пока я все еще здесь.

170
00:14:25,085 --> 00:14:27,925
То, как мы обрабатываем данные, которые мы получили

171
00:14:27,925 --> 00:14:30,635
от сервиса, останется точно таким же.

172
00:14:30,635 --> 00:14:34,565
Поскольку моя служба все еще возвращается и наблюдается,

173
00:14:34,565 --> 00:14:38,055
, и я подписываюсь на наблюдаемый внутри этого компонента.

174
00:14:38,055 --> 00:14:40,765
Итак, эта часть вообще не меняется.

175
00:14:40,765 --> 00:14:47,645
Теперь причина, по которой я впрыскиваю BaseURL в свой компонент, заключается в том, что

176
00:14:47,645 --> 00:14:50,935
в моем шаблоне здесь,

177
00:14:50,935 --> 00:14:53,985
я получаю изображение блюда здесь.

178
00:14:53,985 --> 00:15:00,625
Теперь, но это изображение блюда нужно получить с моего сервера там,

179
00:15:00,625 --> 00:15:03,270
с сервера JSON там.

180
00:15:03,270 --> 00:15:08,800
Итак, мне нужно войти, а затем обновить этот источник, чтобы сказать

181
00:15:08,800 --> 00:15:13,020
BaseURL плюс изображение блюда.

182
00:15:13,020 --> 00:15:18,180
Итак, мне нужно предоставить полный URL-адрес для этого изображения.

183
00:15:18,180 --> 00:15:26,995
Итак, это должно быть, httlp://локальный: 3000/images/, что угодно.

184
00:15:26,995 --> 00:15:29,640
Итак, вот почему мне нужно указать

185
00:15:29,640 --> 00:15:34,605
значение BaseURL в дополнение к изображению блюда здесь.

186
00:15:34,605 --> 00:15:37,470
Итак, это я собираюсь заключить в кавычки,

187
00:15:37,470 --> 00:15:43,395
, так что выражение, подобное этому внутри интерполяции, будет работать правильно.

188
00:15:43,395 --> 00:15:48,935
Итак, заключите это в кавычки, а затем укажите, что в качестве исходного значения

189
00:15:48,935 --> 00:15:54,730
, а затем здесь вы видите, что вы используете BaseURL плюс изображение блюда,

190
00:15:54,730 --> 00:16:00,725
dish.image, свойство изображения содержит только частичный URL-адрес.

191
00:16:00,725 --> 00:16:05,645
Таким образом, он содержит изображения косой черты и имя файла image.png.

192
00:16:05,645 --> 00:16:14,640
Итак, вот почему мне нужно добавить http://localhost:3000/,

193
00:16:14,640 --> 00:16:23,220
к этому свойству изображения блюда, чтобы я построил общий URL-адрес для моего изображения.

194
00:16:23,220 --> 00:16:27,385
Таким образом, с этим мой компонент меню теперь полностью настроен

195
00:16:27,385 --> 00:16:32,000
для получения всех данных со стороны сервера.

196
00:16:32,000 --> 00:16:37,100
Теперь, аналогичным образом, я бы предложил вам обновить

197
00:16:37,100 --> 00:16:43,440
компонент детали блюда, а также домашний компонент.

198
00:16:43,440 --> 00:16:45,790
Перейдя к компоненту детали блюда,

199
00:16:45,790 --> 00:16:48,050
использовать инъекцию там,

200
00:16:48,050 --> 00:16:52,885
, а затем перейти к конструктору,

201
00:16:52,885 --> 00:16:57,685
в конструкторе, теперь мне нужно использовать

202
00:16:57,685 --> 00:17:13,690
инъект BaseURL и BaseURL там,

203
00:17:13,690 --> 00:17:24,185
и так, мой компонент детализации блюда теперь настроен для получения данных из сервисного блюда.

204
00:17:24,185 --> 00:17:26,620
Таким образом, эта часть больше не изменится,

205
00:17:26,620 --> 00:17:29,780
она остается точно такой же, потому что моя блюдо просто

206
00:17:29,780 --> 00:17:34,395
возвращает наблюдаемый, и я подписываюсь на это наблюдаемое здесь.

207
00:17:34,395 --> 00:17:40,065
Мне также нужно обновить файл шаблона компонентов блюдо,

208
00:17:40,065 --> 00:17:43,310
так же, идя к источнику изображения здесь,

209
00:17:43,310 --> 00:17:52,645
Я бы добавил BaseURL плюс изображение блюда, а затем поместил это в цитаты там.

210
00:17:52,645 --> 00:17:57,565
Точно так же, идя на домашний компонент, то же самое.

211
00:17:57,565 --> 00:18:02,830
Я собираюсь сделать инъекцию,

212
00:18:02,830 --> 00:18:09,320
и в конструкторе

213
00:18:10,860 --> 00:18:18,080
Я делаю инъекцию BaseURL,

214
00:18:22,380 --> 00:18:27,640
и перехожу в файл шаблона домашних компонентов,

215
00:18:27,640 --> 00:18:33,480
аналогично, где я использую изображение блюда здесь,

216
00:18:33,480 --> 00:18:39,700
, поэтому я собираюсь сказать, BaseURL плюс изображение блюда,

217
00:18:39,700 --> 00:18:44,815
, а затем заключать его в кавычки здесь,

218
00:18:44,815 --> 00:18:48,530
и сохраните изменения.

219
00:18:52,230 --> 00:18:58,805
Так вот и все. Мое приложение теперь обновлено, чтобы использовать

220
00:18:58,805 --> 00:19:04,540
сервер для получения данных для посуды.

221
00:19:04,540 --> 00:19:09,775
Итак, пойдем и посмотрим приложение в браузере.

222
00:19:09,775 --> 00:19:11,630
Перейдя в браузер,

223
00:19:11,630 --> 00:19:14,150
теперь вы можете видеть, что в моем браузере,

224
00:19:14,150 --> 00:19:18,480
мое блюдо визуализируется точно так же, как и раньше,

225
00:19:18,480 --> 00:19:20,920
а затем переходить к компоненту меню,

226
00:19:20,920 --> 00:19:26,380
вы видите, что меню отображается точно так же, как и раньше, и деталь блюда компонента,

227
00:19:26,380 --> 00:19:31,935
также детали блюда отображаются точно так же, как и раньше.

228
00:19:31,935 --> 00:19:38,015
Таким образом, с изменением, которое мы внесли путем доступа к данным со стороны сервера,

229
00:19:38,015 --> 00:19:41,075
мы можем получить данные со стороны сервера, а затем

230
00:19:41,075 --> 00:19:45,335
рендеринг данных в нашем угловом приложении.

231
00:19:45,335 --> 00:19:51,365
Чтобы убедить вас в том, что данные на самом деле получены с моего сервера JSON,

232
00:19:51,365 --> 00:19:58,590
пойдем к терминалу, а затем увидим журнал в окне терминала.

233
00:19:58,590 --> 00:20:03,620
Переходя к терминалу, где работает мой сервер JSON,

234
00:20:03,620 --> 00:20:08,625
вы можете видеть, что я фактически выполнил кучу запросов Git

235
00:20:08,625 --> 00:20:14,030
с моего сайта сервера, чтобы получить все данные, которые мне нужны в моем приложении.

236
00:20:14,030 --> 00:20:20,755
Итак, действительно мое приложение Angular теперь извлекает все данные из

237
00:20:20,755 --> 00:20:27,850
сайта сервера для всех блюд в моем угловом приложении.

238
00:20:27,850 --> 00:20:31,405
Теперь вы можете использовать тот же подход, чтобы также обновить

239
00:20:31,405 --> 00:20:35,035
последнюю услугу, а также службу продвижения,

240
00:20:35,035 --> 00:20:40,200
, но мы отложим это до окончательного задания в этом курсе,

241
00:20:40,200 --> 00:20:43,380
, но это может завершить это упражнение.

242
00:20:43,380 --> 00:20:46,920
В этом упражнении мы узнали, как сделать

243
00:20:46,920 --> 00:20:50,420
использовать HTTP-клиент для получения данных от

244
00:20:50,420 --> 00:20:54,595
сайта сервера, а затем использовать данные при построении

245
00:20:54,595 --> 00:20:59,525
представлений в рамках компонентов нашего углового приложения.

246
00:20:59,525 --> 00:21:06,000
Это хорошее время для вас, чтобы сделать фиксацию Git с сообщением HTTP часть первая.