1
00:00:00,330 --> 00:00:00,720
D'accord.

2
00:00:00,720 --> 00:00:01,890
Nous saluons le retour.

3
00:00:01,890 --> 00:00:10,470
Nous allons donc passer à un niveau élevé pour parler de ce que font les AP de leur façon de travailler et de la façon dont ils sont structurés et de ce qu'ils répondent.

4
00:00:10,470 --> 00:00:20,010
M-L de Jay Sonic nous allons passer de cela à se salir réellement avec AAPI est en fait travailler avec eux en les incorporant dans une application.

5
00:00:20,010 --> 00:00:20,800
Avant de faire ça.

6
00:00:20,820 --> 00:00:26,040
Vous allez faire un rapide rappel sur la façon dont vous pouvez faire h h t t p p demandes.

7
00:00:26,040 --> 00:00:32,320
Donc la façon la plus commune que vous avez vu probablement toute votre vie sur le web est juste en utilisant le navigateur.

8
00:00:32,640 --> 00:00:36,380
Donc, je peux ouvrir une fenêtre et aller à Google dot com.

9
00:00:36,720 --> 00:00:38,240
J'ai fait une demande.

10
00:00:38,580 --> 00:00:42,280
J'ai frappé, je clique sur ce bouton qui me fait une demande.

11
00:00:42,390 --> 00:00:44,510
Je fais une recherche de chien.

12
00:00:45,390 --> 00:00:50,700
C'est une demande je clique sur ce lien de chien à wikipedia et c'est une demande.

13
00:00:50,700 --> 00:00:50,960
D'ACCORD.

14
00:00:50,970 --> 00:00:52,190
Donc, c'est une façon.

15
00:00:52,530 --> 00:01:00,630
Mais je peux aussi faire des demandes par le biais du code qui est ce que nous allons apprendre sur ici est comment puis-je écrire javascript qui fera une demande pour moi.

16
00:01:00,630 --> 00:01:08,800
Comment puis-je écrire javascript qui va chercher Jaison de l'API météo Yahoo ou de l'API Reddit.

17
00:01:09,030 --> 00:01:20,470
C'est tout notre objectif ici est d'écrire un code qui va aller et obtenir des informations à partir d'une API à travers une demande et puis faire quelque chose avec elle comme l'enregistrer dans une base de données ou le montrer à un utilisateur.

18
00:01:20,790 --> 00:01:25,500
Et le secret est que vous n'avez pas à faire une demande via le navigateur.

19
00:01:25,560 --> 00:01:27,840
Vous pouvez faire une demande par code.

20
00:01:27,840 --> 00:01:34,940
Nous allons voir comment le faire en utilisant un paquet appelé demande assez étrange, mais il ya aussi d'autres façons de le faire.

21
00:01:35,070 --> 00:01:40,130
Un outil appelé Currall vous voir Arel est un moyen de faire des requêtes à partir de la ligne de commande.

22
00:01:40,380 --> 00:02:03,000
Donc pas nécessairement pour une application, mais juste pour vous montrer que les demandes sont que vous connaissez les navigateurs indépendants, je peux demander HGP col slash slash www.youtube.com de mon terminal et je reçois ce contenu exactement la même réponse que je fais quand je vais à Google Dot com.

23
00:02:03,030 --> 00:02:09,330
La principale différence, bien sûr, est que dans un navigateur, cette information est ensuite rendue à moi.

24
00:02:09,420 --> 00:02:18,120
Donc, je vois cela, mais le texte sous-jacent lui qui a renvoyé est ce que je vois ici.

25
00:02:18,480 --> 00:02:23,520
Donc, la plupart du temps dans notre code, nous ne vais pas le demander à partir d'une page web.

26
00:02:23,520 --> 00:02:26,120
Je veux dire que c'est un gâchis pour travailler avec.

27
00:02:26,880 --> 00:02:33,020
Au lieu de cela, nous demandons généralement Jaison ou X-montant d'une API, mais la même idée est vraie.

28
00:02:33,020 --> 00:02:35,580
Je peux demander une API en utilisant Currall.

29
00:02:35,760 --> 00:02:43,220
Alors je fais juste Kerl sur une API que vous IRL mais ce n'est pas ce que nous allons faire vraiment pour la plupart des applications.

30
00:02:43,230 --> 00:02:47,930
C'est juste une sorte de démonstration éducative que vous pouvez le faire à partir de la ligne de commande.

31
00:02:48,060 --> 00:02:53,480
Nous allons le faire à l'intérieur d'une application et nous allons commencer vraiment très simple.

32
00:02:53,530 --> 00:02:56,340
Nous allons vous montrer comment vous faites une demande dans le noeud.

33
00:02:56,760 --> 00:03:05,210
Alors je vais faire un nouveau répertoire ici API yeux et puis je vais faire un nouveau fichier.

34
00:03:05,430 --> 00:03:09,210
Je vais juste appeler la première demande.

35
00:03:09,240 --> 00:03:10,730
Jay Oui.

36
00:03:10,890 --> 00:03:15,420
Donc, tout ce que nous allons faire est de faire une demande à partir d'un fichier javascript.

37
00:03:15,480 --> 00:03:18,150
Nous demanderons donc à nouveau la colonne Googlebot qui est ce que nous faisons.

38
00:03:18,270 --> 00:03:20,360
C'est ce que nous venons de faire en utilisant cURL.

39
00:03:20,940 --> 00:03:23,450
Et je sais que c'est une sorte de tout cela peut être beaucoup à prendre en.

40
00:03:23,580 --> 00:03:27,430
Le point entier est juste que nous avons fait une demande dans le navigateur en rafraîchissant la page.

41
00:03:27,540 --> 00:03:29,340
Nous avons fait une demande et la ligne de commande.

42
00:03:29,340 --> 00:03:32,470
Il fonctionne de la même manière en ce qui concerne le contenu que nous recevons.

43
00:03:32,550 --> 00:03:33,830
Maintenant, faisons la même chose.

44
00:03:33,840 --> 00:03:36,520
Mais à partir d'un fichier javascript.

45
00:03:37,060 --> 00:03:39,170
Donc, je vais ouvrir ce fichier.

46
00:03:40,950 --> 00:03:44,200
Et nous voulons mettre notre code ici qui fera la demande.

47
00:03:44,220 --> 00:03:45,210
Alors, comment faisons-nous cela.

48
00:03:45,210 --> 00:03:47,130
Comment faire une demande à partir du noeud.

49
00:03:47,430 --> 00:03:50,220
Il y a beaucoup de différents paquets de bibliothèques que vous pouvez utiliser.

50
00:03:50,370 --> 00:03:59,380
Celui que nous allons utiliser est appelé demande et c'est probablement le plus commun afin d'obtenir que la demande slash Com pour vous y rendre.

51
00:03:59,400 --> 00:04:05,540
Juste requête de noeud de google a simplifié le client vieilli de demande d'UDP.

52
00:04:05,760 --> 00:04:08,690
Voilà comment nous pouvons faire une simple demande.

53
00:04:08,700 --> 00:04:10,800
C'est une sorte de syntaxe de base.

54
00:04:10,920 --> 00:04:34,070
Si vous prenez un coup d'oeil, nous avons d'abord inclus en exigeant paramètre de demande dans une variable comme tout autre paquet alors ce que nous faisons est de faire une demande à aurl et puis nous avons une fonction que nous passons et il ya plusieurs parties de cette fonction ou plusieurs arguments Et la réponse d'erreur et le corps.

55
00:04:34,450 --> 00:04:42,030
Donc nous utilisons un callback ici parce que faire une demande prend du temps parfois sera très rapide une question millisecondes.

56
00:04:42,030 --> 00:04:48,840
Parfois, la demande si vous demandez une page Web qui n'existe pas ou un serveur qui est en baisse, il sera raccroché.

57
00:04:48,900 --> 00:04:55,630
Et donc vous avez besoin d'attendre souvent des fois pour faire quelque chose jusqu'à ce que vous ayez une réponse si elle est bonne ou mauvaise.

58
00:04:55,950 --> 00:04:59,380
Donc, nous allons voir et nous allons parler de ce que sont et comment vous les utilisez.

59
00:04:59,490 --> 00:05:08,540
Pour l'instant, nous allons simplement copier ce plus et je vais réellement le retaper ligne par ligne, mais je vais juste le garder ici afin que vous puissiez le voir.

60
00:05:08,820 --> 00:05:23,600
Et la toute première chose que nous devons faire, bien sûr, est d'installer la demande de paquet afin NPM demande d'installation que vous allez obtenir une demande et nous allons être en mesure de l'exiger apparaissent correctement.

61
00:05:23,890 --> 00:05:24,340
D'ACCORD.

62
00:05:24,370 --> 00:05:25,240
Nous avons donc fait cela.

63
00:05:25,240 --> 00:05:30,020
Je vais juste redimensionner un peu ici et il va réécrire ceci.

64
00:05:30,040 --> 00:05:31,920
Réécrivez ceci ou nous pouvons y revenir.

65
00:05:32,170 --> 00:05:35,130
Exiger des demandes.

66
00:05:35,290 --> 00:05:36,880
Beau et simple à démarrer.

67
00:05:37,450 --> 00:05:41,320
Donc, la ligne suivante est effectivement faire cette demande.

68
00:05:41,710 --> 00:05:49,110
Donc, cette application si vous voulez appeler la sieste chaque fois que nous l'exécutons, nous allons juste exécuter la première demande de nœud.

69
00:05:49,320 --> 00:05:49,790
Oui.

70
00:05:49,840 --> 00:05:53,410
Tout ce qu'il fera sera d'imprimer l'iChat lui de Google.

71
00:05:53,420 --> 00:05:54,840
Ce sera la première chose que nous ferons.

72
00:05:55,140 --> 00:05:57,690
Donc, notre demande est égale à exiger une demande.

73
00:05:57,700 --> 00:06:02,510
Puis nous faisons notre demande afin que nous allons faire HTP colon slash slash W.W ..

74
00:06:02,600 --> 00:06:03,740
Google.com.

75
00:06:04,030 --> 00:06:10,980
Exactement ce que nous avons fait avec Currall le même que vous êtes malade et nous nous attendons le même timeo âge.

76
00:06:12,010 --> 00:06:14,390
C'est donc la première partie qui fera la demande.

77
00:06:14,420 --> 00:06:18,940
Mais pour faire quoi que ce soit avec les informations qui reviennent nous avons besoin d'un rappel.

78
00:06:19,030 --> 00:06:22,510
Et comme ils l'ont expliqué, c'est parce que ce n'est pas instantané.

79
00:06:22,510 --> 00:06:24,200
Ça prend du temps.

80
00:06:24,220 --> 00:06:28,690
Cette demande doit aller jusqu'à un serveur quelque part potentiellement des milliers de miles loin.

81
00:06:28,780 --> 00:06:34,110
Ensuite, revenez tout le chemin de retour à nous et puis notre ordinateur doit le comprendre et faire le sens de celui-ci.

82
00:06:34,570 --> 00:06:41,770
Il ya donc trois choses que nous passons dans la réponse d'erreur et le corps.

83
00:06:41,770 --> 00:06:47,890
Le premier qui est l'erreur est va tenir toute erreur potentielle que nous obtenons.

84
00:06:47,890 --> 00:06:59,150
Donc, s'il ya un problème, le serveur est en panne ou la demande expire ou nous n'avons pas de connexion Internet, par exemple, si je désactive ma femme et essayez que nous recevrons une erreur de retour.

85
00:06:59,170 --> 00:07:01,010
Nous allons donc voir comment jouer avec cela dans un petit peu.

86
00:07:01,090 --> 00:07:03,800
Mais il est important que vous vérifiez une erreur.

87
00:07:04,000 --> 00:07:13,850
Donc, nous allons faire quelque chose comme ça s'il ya une erreur et puis nous aurons un autre.

88
00:07:13,900 --> 00:07:18,800
Donc, s'il ya une erreur, nous allons simplement annuler ne pas le journal.

89
00:07:20,620 --> 00:07:27,790
Quelque chose s'est mal passé et puis également annuler ce journal l'erreur elle-même.

90
00:07:27,910 --> 00:07:31,460
Sinon, cela signifie que nous avons récupéré quelque chose.

91
00:07:31,930 --> 00:07:39,430
Vous pouvez voir qu'il ya une deuxième chose qu'ils vérifient ici dans cet exemple si la réponse est le code d'état est 200.

92
00:07:39,610 --> 00:07:50,030
Donc, nous n'allons pas entrer dans les codes de statut autant, mais vous connaissez probablement le code d'état 404 chaque fois que vous essayez de demander une page qui n'existe plus.

93
00:07:50,410 --> 00:08:01,020
Si nous recherchons un code d'état qui ne trouve pas le message d'erreur que vous voyez vous savez si vous essayez de demander quelque chose qui ne peut pas être trouvé.

94
00:08:01,030 --> 00:08:03,550
Il ya beaucoup d'autres codes de statut cependant.

95
00:08:04,240 --> 00:08:07,490
Donc vous pouvez voir ici le plus important est cependant 200.

96
00:08:07,510 --> 00:08:08,160
Stands pour.

97
00:08:08,170 --> 00:08:12,280
OK, c'est une réponse standard pour les demandes réussies.

98
00:08:12,280 --> 00:08:26,400
Donc, si les choses se sont bien passées et nous avons obtenu une réponse, nous voulons vérifier si c'est le code de statut est de 200 parce que nous pourrions potentiellement obtenir une réponse qui a un code d'état de quelque chose d'autre que 200 comme la page a bougé.

99
00:08:26,530 --> 00:08:29,490
Et ce ne sera pas deux cents et nous voulons gérer cela différemment.

100
00:08:29,500 --> 00:08:37,960
Donc, c'est quelque chose que vous pouvez sorte de code dur pas dur, mais vous pouvez toujours supposer que vous voulez vérifier si le statu quo est de 200.

101
00:08:38,590 --> 00:08:48,650
Donc, nous allons faire cela ici pour l'instant est une IF imbriquée, donc si la réponse que le code d'état est égal à 200.

102
00:08:48,940 --> 00:08:56,420
Donc, si nous arrivons ici, les choses ont marché.

103
00:08:56,500 --> 00:09:01,300
Donc, si c'est le cas, faisons un rapport à ce journal.

104
00:09:01,990 --> 00:09:03,750
Et nous allons imprimer le corps.

105
00:09:03,880 --> 00:09:13,940
Donc, c'est le dernier morceau de l'information qui est le corps réelle réponse à la substance qui est revenue qui sera notre ou dépasser notre âge à lui de Google.

106
00:09:14,500 --> 00:09:15,970
Il y a donc beaucoup à faire.

107
00:09:16,390 --> 00:09:17,620
Je vais m'en débarrasser pour l'instant.

108
00:09:17,620 --> 00:09:19,020
Coupez tout ça.

109
00:09:19,060 --> 00:09:23,630
Enregistrez mon fichier et voyons ce qui se passe.

110
00:09:23,650 --> 00:09:28,390
Donc, première demande de nœud Oui, c'est le nom de notre fichier.

111
00:09:28,480 --> 00:09:34,390
Et wow nous obtenons tout l'âge Tim imprimé imprimé.

112
00:09:34,750 --> 00:09:36,080
Génial.

113
00:09:36,100 --> 00:09:39,470
Alors essayons aussi de changer que vous êtes.

114
00:09:39,730 --> 00:09:44,770
Let's go pour lire le fichier sécurisé dotcom.

115
00:09:44,860 --> 00:09:46,510
Exécuter.

116
00:09:47,590 --> 00:09:54,190
Et voici je lui ai lu à lui tout que nous pourrions faire exactement la même chose avec une API.

117
00:09:54,340 --> 00:10:04,080
Donc, si nous revenons à l'extrémité du temps Yahoo, c'est pour obtenir le coucher du soleil pour Hawai ne vous attendez pas à taper ceci ou suivre exactement cela.

118
00:10:04,430 --> 00:10:14,070
Mais si je rythme que vous êtes ici ce géant vous êtes l C'est l'API pour Yahoo temps qui me donnera coucher du soleil.

119
00:10:14,070 --> 00:10:15,270
Voyons si cela a marché.

120
00:10:16,060 --> 00:10:19,130
Nous avons eu cette information.

121
00:10:19,750 --> 00:10:20,260
Impressionnant.

122
00:10:20,380 --> 00:10:22,220
Je vais donc m'en débarrasser une seconde.

123
00:10:22,420 --> 00:10:25,690
Maintenant, jetez un oeil à si je change certaines choses.

124
00:10:25,720 --> 00:10:28,960
Alors, que se passe-t-il si mon HTP colon slash taille.

125
00:10:28,980 --> 00:10:43,870
Je veux dire, je ne Google et un tas de choses aléatoires dotcom et je sauvegarder le fichier et je fais une demande que je reçois quelque chose s'est mal passé.

126
00:10:43,900 --> 00:10:45,850
Cela signifie que nous avons une erreur.

127
00:10:46,570 --> 00:10:54,320
Et en plus de cela l'erreur elle-même a quelques informations de Consta que l'erreur de journal l'erreur n'est pas trouvée.

128
00:10:54,730 --> 00:10:56,370
Notre page n'a donc pas été trouvée.

129
00:10:56,710 --> 00:11:03,510
Donc, c'est l'utilisation de la vérification de l'erreur est que vous pouvez vous assurer que la demande a fonctionné.

130
00:11:03,670 --> 00:11:06,610
Donc, si nous ne le faisions pas, nous le traitons automatiquement.

131
00:11:06,670 --> 00:11:11,640
Et dans ce cas déjà l'impression du corps, mais disons que nous enregistrons des données dans la base de données.

132
00:11:11,680 --> 00:11:19,330
Nous voulons nous assurer que nous avons obtenu les données d'abord et à la demande travaillé et nous n'avons pas fait au mauvais endroit ou que vous savez quelque chose a mal tourné.

133
00:11:19,870 --> 00:11:23,170
Mais nous pouvons simplifier tout cela comme vous pouvez le voir ici.

134
00:11:23,260 --> 00:11:29,740
Il s'agit de la version abrégée où vous avez juste une instruction if vérifie pour les deux à la fois.

135
00:11:29,740 --> 00:11:35,910
Très bien, c'est la façon dont nous faisons une demande à partir du nœud en utilisant cette bibliothèque de requêtes ou de demander le package.

136
00:11:35,920 --> 00:11:40,230
Très simple dans le sens que c'est à peu près toujours la même chose.

137
00:11:40,420 --> 00:11:51,050
Vous allez juste d'exiger des demandes et ensuite vous allez ajouter que vous êtes Elen que votre demande et nous changera de nouveau à juste Google dot com.

138
00:11:51,250 --> 00:11:53,720
Ensuite, vous avez votre fonction de rappel.

139
00:11:53,830 --> 00:12:01,430
Trois informations vérifient la présence d'un code d'erreur et la réponse, puis effectuez une opération avec le corps.

140
00:12:01,510 --> 00:12:09,120
Habituellement, vous ne l'imprimez pas seulement, mais c'est là que nous ferions quelque chose avec elle est si il n'y a pas d'erreur et le code de statut est de 200.

141
00:12:09,190 --> 00:12:12,790
Je sais que c'est beaucoup, mais c'est une sorte de recette que vous pouvez suivre.

142
00:12:13,120 --> 00:12:13,620
D'ACCORD.

143
00:12:13,750 --> 00:12:21,260
Donc, dans la prochaine vidéo, nous allons explorer un peu plus avec l'API est en fait demander à Jason API et faire quelque chose avec elle.

144
00:12:21,310 --> 00:12:21,780
Génial.
