1
00:00:00,220 --> 00:00:04,700
OK alors la dernière chose que je veux faire est de refactoriser le middleware.

2
00:00:05,010 --> 00:00:21,780
Donc, ce que cela signifie est essentiellement en ce moment dans une route de camping, nous avons vérifier la propriété de terrain de camping et nous avons est connecté et nous sommes en double est connecté ici où nous avons est connecté pour commentaires.

3
00:00:21,990 --> 00:00:24,680
Et puis de nouveau vérifier la propriété des commentaires.

4
00:00:24,780 --> 00:00:29,930
Donc, nous allons refactor tout cela déplacer ces méthodes dans un nouveau fichier.

5
00:00:29,940 --> 00:00:42,120
Donc, je suis en fait va faire un répertoire dans le haut niveau de notre app faire middleware répertoire et puis à l'intérieur de toucher middleware.

6
00:00:42,210 --> 00:00:52,670
Et je vais simplement combiner tous les middleware en un seul fichier afin que nous puissions avoir un middleware de camping et puis nous pourrions avoir un middleware de commentaire, mais peut-il faire un fichier parce que nous n'avons pas beaucoup.

7
00:00:53,040 --> 00:00:54,630
Et je vais l'appeler indexé.

8
00:00:54,690 --> 00:00:58,600
J.S. Et je vais vous montrer pourquoi plutôt que de l'appeler middleware.

9
00:00:58,880 --> 00:01:03,060
Oui, je l'appelle index dans le répertoire middleware.

10
00:01:03,060 --> 00:01:07,290
Maintenant, ouvrons cela.

11
00:01:09,460 --> 00:01:19,750
Et puis ici, tout le middleware va ici et ensuite nous avons aussi besoin d'ajouter dans notre module que les exportations égales à quelque chose.

12
00:01:19,980 --> 00:01:21,560
Il nous faut donc quelques objets.

13
00:01:21,810 --> 00:01:25,050
Et je vous ai montré quelques façons différentes de le faire.

14
00:01:25,050 --> 00:01:31,420
Nous allons appeler une variable appelée objet middleware qui n'existe pas encore pour obéir J.

15
00:01:31,710 --> 00:01:34,120
Et qui contiendra toutes les méthodes.

16
00:01:34,410 --> 00:02:01,070
Donc, nous allons définir cela ici et nous allons simplement faire un objet vide pour démarrer et puis nous allons ajouter dans quelques lignes qui ressemblent à cet objet middleware point et puis nous aurons la propriété parc de chèques équivaut à une fonction et puis Nous aurons des objets middleware dot vérifier la propriété de commentaire égale une fonction ainsi et ainsi de suite.

17
00:02:01,080 --> 00:02:08,430
Nous ajoutons donc toutes ces fonctions à un objet middleware, puis nous définissons des modules qui exportent pour être un objet middleware.

18
00:02:08,580 --> 00:02:19,280
L'autre manière que je vous ai montré ceci est juste comme ceci où au lieu d'ici nous ajoutons juste dans la propriété de terrain de jeu de chèque comme une fonction qui est également fine.

19
00:02:19,290 --> 00:02:26,240
Mais je veux simplement vous montrer une autre syntaxe plutôt que de définir toutes les fonctions à la fois quand nous définissons l'objet.

20
00:02:26,280 --> 00:02:30,600
Nous pouvons le faire après le fait, puis l'autre façon que vous verrez de temps en temps.

21
00:02:30,750 --> 00:02:35,960
C'est exactement comme ça qu'il n'y a pas de variable.

22
00:02:36,370 --> 00:02:38,160
Vous avez juste un objet ici.

23
00:02:38,850 --> 00:02:41,380
Et puis toutes vos données va là-bas.

24
00:02:42,210 --> 00:02:43,860
Donc, tout cela fonctionnera.

25
00:02:44,310 --> 00:02:52,710
Nous allons faire objet middleware pour trouver que comme un objet et puis nous allons ajouter dans notre code.

26
00:02:52,770 --> 00:03:26,970
Donc, nous commençons l'objet middleware point vérifier la propriété du terrain de camping égale la fonction géante et nous allons aller de l'avant et de copier cela du terrain de camping Oui ou terrain de camping copier tout ce que nous allons couper et nous devrons faire un changement ou deux, Nous n'avons pas besoin de définir ce nom à nouveau, mais nous avons besoin de ces arguments que je me soucie d'un trop nombreux accolades aussi.

27
00:03:27,870 --> 00:03:31,350
C'est dépassé ce peu d'aller.

28
00:03:31,380 --> 00:03:32,590
Cela semble bon.

29
00:03:32,610 --> 00:03:35,640
Nous ferons exactement la même chose cette fois.

30
00:03:35,640 --> 00:03:41,510
Vérifiez les commentaires de contrôle.

31
00:03:43,710 --> 00:03:48,200
Et nous allons copier cela ici.

32
00:03:48,790 --> 00:03:54,490
Coupez-le aussi.

33
00:03:55,300 --> 00:04:06,470
Payez dans et vous voulez la réponse de demande de fonction et le suivant dehors ceci aussi bien.

34
00:04:06,810 --> 00:04:08,460
D'une manière ou d'une autre.

35
00:04:08,460 --> 00:04:09,050
Génial.

36
00:04:09,060 --> 00:04:12,560
Et puis nous avons notre dernier qui est connecté.

37
00:04:12,630 --> 00:04:20,710
Donc, coupez-le hors d'ici et je vais le couper hors d'ici aussi bien c'est identique.

38
00:04:21,780 --> 00:04:22,590
D'ACCORD.

39
00:04:22,590 --> 00:04:35,180
Maintenant, allons-y à notre middleware et ajoutez juste que dans pour obtenir au milieu inférieur où l'objet est enregistré dans la réponse de réponse de fonction égale prochaine.

40
00:04:35,220 --> 00:04:35,930
Même code.

41
00:04:35,970 --> 00:04:45,560
Nous avons simplement déplacé à ce nouveau fichier et nous avons ajouté tout dans l'objet middleware d'un objet qui étaient alors beaucoup de ce que l'exportation à la fin.

42
00:04:45,660 --> 00:04:46,560
Génial.

43
00:04:46,560 --> 00:04:53,370
Maintenant nous avons besoin d'exiger cet index de fichier comme à l'intérieur du répertoire middleware.

44
00:04:53,370 --> 00:05:04,930
Alors commençons par le terrain de camping et en haut, nous allons juste besoin d'un middleware et pour faire ce que nous devons d'abord trouver basé hors de l'endroit où nous sommes qui est au lieu de routes terrain de camping.

45
00:05:05,020 --> 00:05:08,840
Oui comment pouvons-nous indexer cette adresse au lieu de middleware.

46
00:05:09,090 --> 00:05:16,170
Eh bien, nous avons besoin de retourner un répertoire dans le 10 et puis nous avons besoin d'aller dans le middleware.

47
00:05:16,170 --> 00:05:24,230
Donc, nous avons besoin d'un VAR que nous appelons middleware égaux exigent et c'est un point dot slash.

48
00:05:24,300 --> 00:05:34,070
Donc, cela nous amène dans le middleware 10 slash et nous pourrions faire cet index.

49
00:05:34,200 --> 00:05:34,680
Oui.

50
00:05:34,830 --> 00:05:51,890
Mais la raison pour laquelle je voulais vous montrer que je veux que nous le nommer indexé nous est qu'il ya effectivement un nom spécial que si nous avons besoin d'un répertoire, mais pas un fichier si je veux juste middleware, il faudra automatiquement le contenu de l'index Dot.

51
00:05:51,960 --> 00:05:57,550
Oui, c'est censé être comme la maison où le fichier principal où d'autres choses sont nécessaires.

52
00:05:57,570 --> 00:06:03,830
Donc, en fait, si nous prenons un coup d'oeil dans le répertoire des modules de nœud où êtes-vous à l'intérieur.

53
00:06:03,930 --> 00:06:04,780
Voilà.

54
00:06:05,130 --> 00:06:07,410
Jetons un coup d'œil à Express.

55
00:06:07,530 --> 00:06:21,130
Vous pouvez voir qu'il ya un index comme le fichier et l'index que Julius est le seul fichier qui est réellement nécessaire lorsque nous avons besoin du répertoire Express et il nécessite un tas d'autres fichiers à son tour.

56
00:06:21,130 --> 00:06:23,710
Et ces fichiers peuvent nécessiter un tas d'autres.

57
00:06:24,390 --> 00:06:25,420
Mais c'est vraiment important.

58
00:06:25,440 --> 00:06:35,330
Index tel que est un nom spécial, donc nous n'avons pas à faire l'index de barre oblique, comme nous le laissons juste comme dot middleware dot.

59
00:06:35,430 --> 00:06:44,330
Maintenant, nous avons besoin d'utiliser middleware parce que aucune de ces fonctions sont définies est enregistré dans la propriété parc de chèques.

60
00:06:44,330 --> 00:06:45,440
Ceux-là n'existent pas.

61
00:06:45,600 --> 00:07:00,060
Ils sont tous à l'intérieur des objets middleware maintenant juste comme ce point middleware est connecté signifie la même chose pour est connecté ici et ici et ici.

62
00:07:00,330 --> 00:07:03,750
Et enfin, nous allons sauver.

63
00:07:04,230 --> 00:07:09,530
Et nous devons faire la même chose dans notre fichier de commentaires.

64
00:07:09,570 --> 00:07:10,580
Voilà.

65
00:07:11,220 --> 00:07:12,930
Et nous voulons juste middleware.

66
00:07:13,020 --> 00:07:19,590
Dot est juste au milieu où Dot est connecté.

67
00:07:19,590 --> 00:07:23,290
Même chose pour vérifier la propriété commune de contrôle de propriété commune.

68
00:07:23,370 --> 00:07:26,220
Et un autre commentaire vérifier la propriété.

69
00:07:26,220 --> 00:07:28,030
Donc, ce que nous avons fait, c'est deux choses.

70
00:07:28,050 --> 00:07:32,070
Nous avons vraiment nettoyé les fichiers de l'itinéraire un peu.

71
00:07:32,070 --> 00:07:35,540
Ils n'ont pas ces middleware supplémentaire au fond qui sont assez long réellement.

72
00:07:35,640 --> 00:07:36,560
Si vous jetez un oeil.

73
00:07:36,930 --> 00:07:46,110
Mais nous ne sommes plus en train d'écrire ce code deux fois est connecté et tout autre futur middleware que nous pourrions avoir besoin que nous allons partager dans différents fichiers.

74
00:07:46,110 --> 00:07:47,290
Nous n'avons pas de duplicata.

75
00:07:47,340 --> 00:07:49,310
Nous les ajoutons simplement à ce fichier.

76
00:07:49,350 --> 00:07:49,670
D'accord.

77
00:07:49,680 --> 00:07:50,780
Assurons-nous que cela fonctionne.

78
00:07:50,880 --> 00:07:53,220
Comme test final.

79
00:07:53,220 --> 00:08:00,760
Aucun problème ici qui est bon et tout semble correct mais nous avons effectivement un problème.

80
00:08:00,810 --> 00:08:13,350
Si j'ai cliqué sur supprimer cela illustre, il me dit terrain de camping n'est pas défini à l'intérieur de l'index de barre oblique middleware comme l'objet middleware Line 6 à vérifier la propriété du terrain de camping.

81
00:08:13,380 --> 00:08:24,500
Si nous prenons un coup d'oeil à l'intérieur de notre fichier middleware propriété de camping vérifier me dit camping n'était pas défini un mois 6.

82
00:08:25,290 --> 00:08:28,540
Ce que je dois faire est d'exiger le terrain de camping.

83
00:08:28,950 --> 00:08:49,470
Jusqu'à présent camping basée hors de l'endroit où nous sommes à l'intérieur de l'annuaire middleware techniquement de la 10 je dois faire besoin de dot dot slash modèles slash terrains de camping, puis le dupliquer et faire la même chose pour les commentaires.

84
00:08:49,980 --> 00:09:04,670
Exiger que Slash modèle slash commentaires enregistrer une fois de plus redémarrer revenir actualiser le login à nouveau.

85
00:09:05,100 --> 00:09:11,090
Sirius Black.

86
00:09:11,220 --> 00:09:14,810
Maintenant, si j'essaie de supprimer ce tout fonctionne bien.

87
00:09:14,850 --> 00:09:16,360
Et le dang.

88
00:09:16,530 --> 00:09:18,360
Maintenant, je suis sur un autre terrain de camping.

89
00:09:18,780 --> 00:09:21,100
Oh les choses que je fais pour cette classe.

90
00:09:21,490 --> 00:09:26,740
OK alors il suffit de vérifier et il fonctionne toujours aussi bien.

91
00:09:27,840 --> 00:09:28,810
Voilà.

92
00:09:29,210 --> 00:09:38,880
Donc, ce qui se passait, c'est que nous n'avons pas besoin des dépendances correctes et nous ne savions pas que jusqu'à ce que nous avons réellement essayé d'exécuter le code une fois nécessaire terrain de camping à commenter.

93
00:09:38,940 --> 00:09:40,500
Tout est bon à faire.

94
00:09:40,950 --> 00:09:54,570
Très bien, donc tout ce que nous avons vraiment fait il ya déplacer un certain code dans un fichier séparé et exiger que le fichier, mais il a nettoyé nos routes un peu et c'est aussi agréable parce que maintenant nous avons d'autres middleware que nous devons ajouter.

95
00:09:54,570 --> 00:10:00,840
Nous avons une petite structure mis en place un endroit pour les mettre et il est très facile de les exiger partout.

96
00:10:00,840 --> 00:10:01,310
Impressionnant.

97
00:10:01,500 --> 00:10:05,850
Donc, cela enveloppe crud complet pour un terrain de camping dans les commentaires.

98
00:10:05,910 --> 00:10:20,040
Vous pouvez maintenant créer la mise à jour de lecture et supprimer des terrains de camping et vous pouvez créer des mises à jour de lecture et supprimer des commentaires ainsi et les autorisations là-bas afin qu'il y ait l'autorisation et l'authentification de sorte que vous ne pouvez pas créer quelque chose que vous pas connecté.

99
00:10:20,250 --> 00:10:32,030
Vous ne pouvez pas modifier quelque chose ou supprimer quelque chose si vous n'êtes pas connecté et si elle ne vous appartient pas, mais vous pouvez lire un commentaire ou vous pouvez lire un camping si vous êtes connecté ou non, peu importe .

100
00:10:32,040 --> 00:10:33,840
Même chose pour les commentaires.

101
00:10:33,840 --> 00:10:36,630
Donc, nous avons trois types de niveaux de permissions.

102
00:10:36,630 --> 00:10:37,840
L'un est que vous pouvez faire tout.

103
00:10:37,860 --> 00:10:45,310
Vous pouvez lire quelque chose pour non connecté à est que vous pouvez créer quelque chose si vous êtes connecté, peu importe qui vous êtes bien.

104
00:10:45,360 --> 00:10:49,890
En théorie, vous pouvez modifier et mettre à jour quelque chose, mais cela dépend de qui vous êtes.

105
00:10:49,890 --> 00:11:10,930
Ensuite, nous allons ajouter dans d'autres fonctionnalités amusantes et celui qui, espérons-nous, est le plus excitant ou qui va au moins rendre l'application plus utilisable est quelque chose de messages Flash, donc c'est une façon de voir un message d'erreur qui apparaît Dit créé avec succès ou vous n'avez pas la permission de le faire ou S'il vous plaît vous connecter ou un mot de passe incorrect donc il rend les choses beaucoup plus utilisable.

106
00:11:11,190 --> 00:11:12,180
Nous verrons cela bientôt.
