1
00:00:03,560 --> 00:00:07,745
В этом упражнении мы узнаем больше о замыкании на себя.

2
00:00:07,745 --> 00:00:13,635
Сам Loopback начал свое путешествие с небольшой компании под названием StrongLoop.

3
00:00:13,635 --> 00:00:20,775
Эта компания была впоследствии приобретена IBM и Loopback стала частью

4
00:00:20,775 --> 00:00:28,725
платформы IBM Bluemix, но петля по-прежнему доступна как платформа с открытым исходным кодом.

5
00:00:28,725 --> 00:00:36,205
Таким образом, вы можете установить и использовать Loopback для создания вашего бэкэнда в качестве сервиса,

6
00:00:36,205 --> 00:00:43,850
как мы продемонстрируем в этом упражнении и в остальных двух упражнениях этого урока.

7
00:00:43,850 --> 00:00:51,230
Как я уже упоминал, сам Loopback доступен как модуль NPM.

8
00:00:51,230 --> 00:00:56,445
Итак, мы сначала установим интерфейс командной строки Loopback.

9
00:00:56,445 --> 00:01:00,810
Таким образом, чтобы установить интерфейс командной строки Loopback

10
00:01:00,810 --> 00:01:02,875
, CLI, в командной строке

11
00:01:02,875 --> 00:01:13,030
введите npminstall loopback CLI минус сохранение.

12
00:01:13,030 --> 00:01:18,170
Теперь, если вы делаете это на компьютере Mac или Linux,

13
00:01:18,170 --> 00:01:22,025
убедитесь, что используете sudo перед ним, а затем

14
00:01:22,025 --> 00:01:26,855
установите интерфейс командной строки Loopback.

15
00:01:26,855 --> 00:01:29,024
Как только это будет установлено,

16
00:01:29,024 --> 00:01:31,195
вы можете начать с упражнением.

17
00:01:31,195 --> 00:01:32,510
Как вы можете видеть, прямо сейчас

18
00:01:32,510 --> 00:01:37,380
я использую Loopback CLI версии 4.2.0 в этом курсе.

19
00:01:37,380 --> 00:01:45,380
Теперь, чтобы эшафот из приложения на основе loopback очень просто.

20
00:01:45,380 --> 00:01:47,725
После установки интерфейса командной строки

21
00:01:47,725 --> 00:01:50,690
может потребоваться перезапустить терминал,

22
00:01:50,690 --> 00:01:53,970
чтобы команда была доступна по запросу.

23
00:01:53,970 --> 00:02:00,080
Поэтому не забудьте перезапустить терминал или окно команды.

24
00:02:00,080 --> 00:02:01,810
Затем, в подсказке,

25
00:02:01,810 --> 00:02:06,560
вы должны иметь эту команду под названием lb, доступную для нас.

26
00:02:06,560 --> 00:02:08,695
LB стоит для замыкания на себя.

27
00:02:08,695 --> 00:02:14,560
Так. Чтобы вывести приложение Loopback в командной строке терминала,

28
00:02:14,560 --> 00:02:18,850
введите lb ConfusionServer-Loopback в

29
00:02:21,490 --> 00:02:25,650
удобном месте на компьютере.

30
00:02:25,650 --> 00:02:27,845
Когда мы это сделаем,

31
00:02:27,845 --> 00:02:34,530
Loopback CLI в конечном итоге создаст приложение для нас,

32
00:02:34,530 --> 00:02:36,950
и для имени приложения

33
00:02:36,950 --> 00:02:39,585
я просто собираюсь принять такое же имя,

34
00:02:39,585 --> 00:02:45,389
а затем я попрошу его создать проект в этом конкретном каталоге,

35
00:02:45,389 --> 00:02:53,090
а затем мы выберем версию 3.X Loopback для нас, чтобы эшафот из приложения.

36
00:02:53,090 --> 00:02:55,880
Затем, для сервера API,

37
00:02:55,880 --> 00:03:02,070
мы выберем в качестве опции API-сервер.

38
00:03:02,070 --> 00:03:07,170
Тогда подождите, пока Loopback выйдет из нашего приложения.

39
00:03:12,230 --> 00:03:14,355
Как только это будет сделано,

40
00:03:14,355 --> 00:03:16,110
следующий шаг, конечно,

41
00:03:16,110 --> 00:03:24,605
перейти в папку ConfusionServer-LoopBack.

42
00:03:24,605 --> 00:03:30,415
Затем мы начнем настройку нашего сервера.

43
00:03:30,415 --> 00:03:35,870
Теперь Loopback поддерживает данные через моделирование данных.

44
00:03:35,870 --> 00:03:38,060
Таким образом, мы можем определить модели данных.

45
00:03:38,060 --> 00:03:42,030
Для этого интерфейс командной строки Loopback предоставляет нам

46
00:03:42,030 --> 00:03:46,975
различные команды для разработки моделей данных.

47
00:03:46,975 --> 00:03:50,960
Итак, в этом случае я собираюсь разработать один

48
00:03:50,960 --> 00:03:55,130
пример данных модели для моих блюд здесь.

49
00:03:55,130 --> 00:03:56,620
Итак, в ответ,

50
00:03:56,620 --> 00:03:59,560
позвольте мне напечатать модель lb.

51
00:03:59,560 --> 00:04:01,905
Затем, как мы проходим через шаги,

52
00:04:01,905 --> 00:04:04,600
я объясню вам, что

53
00:04:04,600 --> 00:04:12,860
интерфейс командной строки Loopback и как он создает модель данных для блюд.

54
00:04:12,860 --> 00:04:14,840
Итак, в этом случае

55
00:04:14,840 --> 00:04:16,720
мы просто

56
00:04:16,720 --> 00:04:21,460
напечатаем модель lb, и тогда нам

57
00:04:21,460 --> 00:04:24,165
будет предложено имя модели, а затем я напечатаю имя модели как блюда.

58
00:04:24,165 --> 00:04:28,059
Как вы помните, мы используем блюда, рекламные акции

59
00:04:28,059 --> 00:04:34,339
и лидеры в качестве трех основных источников данных для нашего приложения.

60
00:04:34,339 --> 00:04:39,420
Итак, мы создадим нашу первую модель с названием блюд, и эта модель, в

61
00:04:39,420 --> 00:04:46,580
данный момент, будет храниться в базе данных в памяти нашего компьютера на данный момент.

62
00:04:46,580 --> 00:04:47,840
В следующем упражнении

63
00:04:47,840 --> 00:04:52,940
мы добавим в MongoDB в качестве бэкэнда персистентности для наших данных.

64
00:04:52,940 --> 00:04:58,110
Теперь эта модель посуды будет постоянной моделью.

65
00:04:58,110 --> 00:05:03,890
Таким образом, мы выберем постоянную модель в качестве опции для модели,

66
00:05:03,890 --> 00:05:09,350
а затем мы скажем, разоблачить блюда через REST API,

67
00:05:09,350 --> 00:05:13,060
а затем, по умолчанию,

68
00:05:13,060 --> 00:05:17,880
он выставит его конечную точку косой черты блюд, и это будет прекрасно для нас.

69
00:05:17,880 --> 00:05:19,680
Так что мы можем просто сказать «да».

70
00:05:19,680 --> 00:05:23,865
Затем модель будет создана в папке с именем common.

71
00:05:23,865 --> 00:05:27,950
Теперь, как только приложение Loopback будет выбрано,

72
00:05:27,950 --> 00:05:34,020
мы увидим, где все эти данные хранятся в самой папке и в подпапке,

73
00:05:34,020 --> 00:05:38,295
и эта модель будет создана в общей подпапке.

74
00:05:38,295 --> 00:05:40,580
Итак, мы выберем это.

75
00:05:40,580 --> 00:05:42,110
Затем, на этом этапе,

76
00:05:42,110 --> 00:05:45,860
он предложит нам выбрать все свойства, которые мы хотим

77
00:05:45,860 --> 00:05:50,750
указать для модели посуды.

78
00:05:50,750 --> 00:05:54,710
Таким образом, для этого мы будем указывать

79
00:05:54,710 --> 00:06:00,880
имя в качестве первого свойства, а затем мы будем указывать тип свойства в виде строки.

80
00:06:00,880 --> 00:06:02,380
Таким образом, как вы видите,

81
00:06:02,380 --> 00:06:09,060
это подсказывает нам и получение информации о различных частях нашей модели,

82
00:06:09,060 --> 00:06:12,425
а затем помогает нам настроить модель для нас.

83
00:06:12,425 --> 00:06:18,355
Таким образом, это тип строки, и это необходимо, и значение по умолчанию будет пустым.

84
00:06:18,355 --> 00:06:22,230
Так. Это будет имя, а затем описание,

85
00:06:22,370 --> 00:06:29,270
которое будет иметь тип строки, требуемый, и значение по умолчанию пустое.

86
00:06:29,270 --> 00:06:36,570
Затем, категория, которая будет иметь тип строки, требуемый и значение по умолчанию пусто.

87
00:06:36,570 --> 00:06:40,930
Изображение, которое будет иметь строковый тип,

88
00:06:40,930 --> 00:06:43,934
и это обязательно,

89
00:06:43,934 --> 00:06:47,550
и значение по умолчанию будет пустым.

90
00:06:47,950 --> 00:06:52,885
Метка, которая также будет строкового типа.

91
00:06:52,885 --> 00:06:58,310
Это обязательно, но значение по умолчанию мы будем указывать как пустая строка.

92
00:06:58,310 --> 00:07:01,360
Затем последней будет цена,

93
00:07:01,360 --> 00:07:05,870
которая будет необходима, а значение по умолчанию равно нулю.

94
00:07:05,870 --> 00:07:10,115
Теперь вы понимаете, почему я настроил все эти различные свойства.

95
00:07:10,115 --> 00:07:19,070
Все они являются частью объекта посуды, который мы используем на нашей стороне сервера.

96
00:07:19,070 --> 00:07:22,580
Теперь, как только вы завершили ввод всех свойств,

97
00:07:22,580 --> 00:07:23,760
и которые у нас есть

98
00:07:23,760 --> 00:07:25,565
, то в этот момент

99
00:07:25,565 --> 00:07:27,080
, последний, конечно,

100
00:07:27,080 --> 00:07:31,270
является добавить свойство,

101
00:07:31,270 --> 00:07:34,265
которое будет типа Boolean,

102
00:07:34,265 --> 00:07:36,665
и это необходимо,

103
00:07:36,665 --> 00:07:39,440
и значение по умолчанию ложно.

104
00:07:39,440 --> 00:07:41,560
Вот оно. После того, как мы ввели все свойства,

105
00:07:41,560 --> 00:07:47,280
вы просто нажмите, когда он запрашивает имя свойства, если вы

106
00:07:47,280 --> 00:07:49,960
вводите return, то модель будет выложена.

107
00:07:49,960 --> 00:07:55,050
Теперь, аналогичным образом, мы создадим модели для промо-акций и лидеров.

108
00:07:55,050 --> 00:08:04,625
Итак, для продвижения, позвольте мне пойти вперед и сказать модель lb, а название модели - это акции.

109
00:08:04,625 --> 00:08:08,080
Опрос в БД это модель персиста, и мы

110
00:08:08,080 --> 00:08:12,625
выставим это с помощью API, и общего.

111
00:08:12,625 --> 00:08:23,040
Для рекламных акций свойства являются имя строки типа не требуют значения по умолчанию,

112
00:08:23,040 --> 00:08:25,949
изображение строки типа,

113
00:08:25,949 --> 00:08:29,535
не требуют значения по умолчанию,

114
00:08:29,535 --> 00:08:34,030
метка строки типа,

115
00:08:34,030 --> 00:08:39,085
требуется значение по умолчанию пусто.

116
00:08:39,085 --> 00:08:43,220
Цена, тип строки, обязательный,

117
00:08:43,220 --> 00:08:45,170
значение по умолчанию равно нулю,

118
00:08:45,170 --> 00:08:52,150
а затем описание требуется и значение по умолчанию пустое.

119
00:08:52,150 --> 00:08:54,550
Это все для промо-акций.

120
00:08:54,550 --> 00:08:57,460
Позвольте мне теперь создать модель лидеров.

121
00:08:57,460 --> 00:09:07,090
Итак, мы скажем модель LB, и мы скажем лидеры,

122
00:09:07,090 --> 00:09:10,750
и это будет в базе данных PersistedModel,

123
00:09:10,750 --> 00:09:14,290
Expose лидеров через REST API, пользовательский, общий.

124
00:09:14,290 --> 00:09:16,610
Таким образом, как вы можете видеть создание модели очень,

125
00:09:16,610 --> 00:09:20,175
очень просто с помощью LoopBack CLI,

126
00:09:20,175 --> 00:09:24,260
а для лидера свойства имени,

127
00:09:24,260 --> 00:09:27,830
строки типа, требуется,

128
00:09:27,830 --> 00:09:32,759
по умолчанию пусто, изображение строки типа,

129
00:09:32,759 --> 00:09:36,634
требуемое значение по умолчанию пустое,

130
00:09:36,634 --> 00:09:40,190
обозначение строки типа,

131
00:09:40,190 --> 00:09:44,130
обязательное значение по умолчанию пустое,

132
00:09:44,130 --> 00:09:46,790
аббревиатура строки типа,

133
00:09:46,790 --> 00:09:54,425
требуется пустое, а последнее - описание строки типа, требуется пустое.

134
00:09:54,425 --> 00:10:00,965
Вот оно. Итак, мы настроили здесь три разные модели: акции

135
00:10:00,965 --> 00:10:04,280
, лидеры и блюда.

136
00:10:04,280 --> 00:10:09,175
Вот оно. Теперь наш сервер LoopBack был бы настроен.

137
00:10:09,175 --> 00:10:12,765
Мы рассмотрим это в нашем редакторе,

138
00:10:12,765 --> 00:10:19,715
а также запустим этот сервер LoopBack, а затем посмотрим, что он служит для нас.

139
00:10:19,715 --> 00:10:21,940
Чтобы запустить сервер LoopBack,

140
00:10:21,940 --> 00:10:29,205
в командной строке введите NPM start или точку пространства узла.

141
00:10:29,205 --> 00:10:32,280
В любом случае сервер LoopBack запустится,

142
00:10:32,280 --> 00:10:35,620
и сервер LoopBack будет доступен нам.

143
00:10:35,620 --> 00:10:39,210
По этому адресу вы также можете просмотреть

144
00:10:39,210 --> 00:10:43,065
REST API, который поддерживается сервером LoopBack в этой конечной части.

145
00:10:43,065 --> 00:10:45,360
Итак, позвольте мне сначала скопировать это,

146
00:10:45,360 --> 00:10:49,670
а затем мы посмотрим, что сервер LoopBack обслуживает в данный момент.

147
00:10:49,670 --> 00:10:51,170
В адресной строке браузера,

148
00:10:51,170 --> 00:10:55,325
давайте напечатаем это, а затем посмотрим, что наш сервер LoopBack,

149
00:10:55,325 --> 00:10:56,990
если вы получите доступ к нему,

150
00:10:56,990 --> 00:11:03,010
покажет, когда он был в последний раз запущен и как долго он работает.

151
00:11:03,010 --> 00:11:11,575
Там. Теперь, давайте перейдем к проводнику нашего сервера LoopBack,

152
00:11:11,575 --> 00:11:13,500
и тогда вы сразу увидите, что

153
00:11:13,500 --> 00:11:17,785
этот LoopBack API Explorer использует что-то, называемое

154
00:11:17,785 --> 00:11:25,185
форматом Swagger IO, чтобы показать нам все конечные точки REST API.

155
00:11:25,185 --> 00:11:28,989
Итак, здесь вы видите, что у нас есть блюда, лидеры, акции,

156
00:11:28,989 --> 00:11:30,740
и LoopBack, по умолчанию,

157
00:11:30,740 --> 00:11:33,540
добавляет пользовательскую модель там.

158
00:11:33,540 --> 00:11:37,860
Модель пользователя является стандартной моделью пользователя для целей проверки подлинности.

159
00:11:37,860 --> 00:11:41,690
Посмотрим, как использовать это в следующем упражнении.

160
00:11:41,690 --> 00:11:43,470
Теперь, давайте нажимаем на посуду.

161
00:11:43,470 --> 00:11:48,250
Когда вы нажмете на блюда, вы увидите, что сервер LoopBack автоматически настраивает

162
00:11:48,250 --> 00:11:51,160
конечную точку мыса, а затем

163
00:11:51,160 --> 00:11:55,435
автоматически предоставляет различные конечные точки REST API для нас,

164
00:11:55,435 --> 00:12:01,310
а затем соответствующие действия, которые вы можете выполнить на каждом из них.

165
00:12:01,310 --> 00:12:06,775
Мало того, что с API ввода-вывода Swagger

166
00:12:06,775 --> 00:12:11,610
вы также автоматически получаете эту документированную информацию здесь,

167
00:12:11,610 --> 00:12:16,670
которая дает вам подробную информацию о том, как использовать эту конечную точку REST API.

168
00:12:16,670 --> 00:12:19,145
Итак, здесь, когда он говорит получить слэш блюда,

169
00:12:19,145 --> 00:12:22,185
он говорит, что типично.

170
00:12:22,185 --> 00:12:26,490
Это структура модели, используемая там,

171
00:12:26,490 --> 00:12:31,910
а затем «давайте попробуем это», и тогда вы увидите, что она

172
00:12:31,910 --> 00:12:34,440
вернет нам пустое тело, потому что на

173
00:12:34,440 --> 00:12:37,930
данный момент в моей базе данных в памяти ничего нет.

174
00:12:37,930 --> 00:12:42,910
Итак, напомним, что мы настроили это с БД в памяти,

175
00:12:42,910 --> 00:12:43,910
что означает, что это

176
00:12:43,910 --> 00:12:46,990
база данных в памяти и прямо сейчас она ничего не содержит.

177
00:12:46,990 --> 00:12:50,400
Но в следующем упражнении мы увидим, как мы будем подключать это к

178
00:12:50,400 --> 00:12:56,610
нашему серверу MongoDB и иметь возможность получить всю информацию с нашего сервера MongoDB.

179
00:12:56,610 --> 00:13:00,180
Аналогичным образом, если вы хотите разместить блюдо,

180
00:13:00,180 --> 00:13:04,165
то все, что вам нужно сделать, это использовать эту конечную точку «POST блюда»,

181
00:13:04,165 --> 00:13:08,280
и это также дает вам точно структуру

182
00:13:08,280 --> 00:13:12,435
данных, которые вам нужно использовать для предоставления информации модели.

183
00:13:12,435 --> 00:13:15,450
Итак, вы можете просто скопировать это, а затем вставить его в данные,

184
00:13:15,450 --> 00:13:19,120
а затем заполнить каждое из этих значений здесь,

185
00:13:19,120 --> 00:13:21,760
а затем, как только вы это сделаете, вы можете просто, скажем,

186
00:13:21,760 --> 00:13:26,060
попробовать его, а затем это будет опубликовано на сервере.

187
00:13:26,060 --> 00:13:28,935
Таким образом, вы можете выполнять все

188
00:13:28,935 --> 00:13:35,575
операции get, put, post и delete напрямую, используя этот Explorer здесь,

189
00:13:35,575 --> 00:13:38,970
чтобы взаимодействовать с вашими конечными точками REST

190
00:13:38,970 --> 00:13:42,570
API, которые автоматически создаются для вас LoopBack.

191
00:13:42,570 --> 00:13:45,340
Таким образом, мы завершим это упражнение.

192
00:13:45,340 --> 00:13:49,805
Таким образом, в этом упражнении мы увидели, как мы можем очень быстро

193
00:13:49,805 --> 00:13:55,805
настроить сервер REST API с помощью фреймворка LoopBack.

194
00:13:55,805 --> 00:13:57,480
В следующих двух упражнениях

195
00:13:57,480 --> 00:14:02,030
мы рассмотрим более подробную информацию о структуре LoopBack.

196
00:14:02,030 --> 00:14:06,755
Теперь это может быть подходящее время для вас сделать инициализацию Git

197
00:14:06,755 --> 00:14:10,230
вашей папки LoopBack, а затем сделать Git

198
00:14:10,230 --> 00:14:15,570
фиксацию с «Начало работы» LoopBack в качестве сообщения.