1
00:00:00,230 --> 00:00:01,590
OK it will come back.

2
00:00:01,590 --> 00:00:04,600
So this lesson is one that I'm pretty excited about making.

3
00:00:04,680 --> 00:00:05,960
I hope that you enjoy it.

4
00:00:05,970 --> 00:00:10,020
We're going to be writing our very first express app before we actually do that.

5
00:00:10,080 --> 00:00:11,180
I want to take 30 seconds.

6
00:00:11,190 --> 00:00:12,840
It'll be really short I promise.

7
00:00:12,900 --> 00:00:18,960
Just review two important topics how an existing app works so the dog app that I've already shown and

8
00:00:18,960 --> 00:00:22,830
then the basics of the HTP request response lifecycle.

9
00:00:23,030 --> 00:00:24,150
OK let's get started.

10
00:00:24,210 --> 00:00:27,770
I'm going to begin by talking about HTP requests and responses.

11
00:00:27,990 --> 00:00:34,500
So remember when I go to a u r l like Google dot com and I hit Enter I'm asking for a web page I send

12
00:00:34,500 --> 00:00:39,220
an HDTV request and that request has a particular verb or type.

13
00:00:39,240 --> 00:00:43,260
Is it a GET request or a POST request or some of the other ones we haven't really seen yet.

14
00:00:43,590 --> 00:00:49,040
And then I potentially send some data along with the request and the server that receives my request

15
00:00:49,050 --> 00:00:54,250
the server that I'm requesting Google has some code that decides what page to send me back.

16
00:00:54,420 --> 00:01:00,090
So it sends me that Google home page or maybe it sends me the Google logon page or the G-mail page or

17
00:01:00,090 --> 00:01:03,180
a page says My password is incorrect whatever it is.

18
00:01:03,240 --> 00:01:05,260
The server is deciding what to send back.

19
00:01:05,430 --> 00:01:08,090
And then it responds with a response.

20
00:01:08,160 --> 00:01:14,070
So I send a request server side code figures out what I'm asking for and then it does some stuff and

21
00:01:14,070 --> 00:01:19,440
then send feedback a response that is fundamentally what we're going to use Express to do.

22
00:01:19,440 --> 00:01:22,970
So I have this dog demo app that you may remember.

23
00:01:23,160 --> 00:01:24,640
It's very very forgettable.

24
00:01:24,690 --> 00:01:30,000
Just a simple app that has a database that we've connected to and a user can view all the dogs in the

25
00:01:30,000 --> 00:01:30,730
database.

26
00:01:30,750 --> 00:01:34,390
Each dog only has a name and a breed entirely useless.

27
00:01:34,560 --> 00:01:38,670
But it is nice and simple and I think it's a good illustration of how Express works.

28
00:01:38,670 --> 00:01:40,270
So we have some code in here.

29
00:01:40,440 --> 00:01:44,010
Things like requiring Express and requiring a database.

30
00:01:44,430 --> 00:01:49,980
But most importantly are these three chunks and these are called wraps and we'll be writing our own

31
00:01:49,980 --> 00:01:55,650
routes and just a few minutes routes or the code that are responsible for listening and receiving those

32
00:01:55,950 --> 00:02:00,030
requests that I talked about and then deciding what to send back.

33
00:02:00,030 --> 00:02:06,600
So in this case we have code that is listening for a request to the home page just to slash then we

34
00:02:06,600 --> 00:02:11,910
have some code that's listening for a get request to slash dogs and we have some other code that's listening

35
00:02:11,910 --> 00:02:17,360
for a post request on slash create dogs and then inside of the routes we're running some code.

36
00:02:17,490 --> 00:02:19,810
In this case we're just rendering the home page.

37
00:02:19,830 --> 00:02:25,780
So that's going to respond with the contents of our home page which is another file somewhere else in

38
00:02:25,810 --> 00:02:26,530
this one.

39
00:02:26,670 --> 00:02:32,460
When someone asks for slashed dogs as a get request we find all the dogs and then we render the dogs

40
00:02:32,460 --> 00:02:35,600
page and send all the data for the dogs.

41
00:02:35,600 --> 00:02:36,640
Along with that.

42
00:02:36,990 --> 00:02:41,190
And when someone creates a dog we're sending a post request to create dog.

43
00:02:41,190 --> 00:02:46,770
We're going to add a dog to the database and then redirect them back to the dog's page where they can

44
00:02:46,770 --> 00:02:47,800
view all the dogs.

45
00:02:48,030 --> 00:02:52,290
So don't get too intimidated by the syntax and all the different pieces will be introducing this one

46
00:02:52,290 --> 00:02:53,330
little bit at a time.

47
00:02:53,490 --> 00:02:58,680
But the very first thing that everything starts from is this idea of a route and routes are just bits

48
00:02:58,680 --> 00:03:05,540
of code that will run some other code depending on the request that is received on our server.

49
00:03:05,580 --> 00:03:09,150
So then that brings me to the next point which is starting our server.

50
00:03:09,150 --> 00:03:11,710
So we have to run the file which is called apt.

51
00:03:11,810 --> 00:03:13,390
Yes node apt.

52
00:03:13,500 --> 00:03:15,450
Yes just like that.

53
00:03:15,690 --> 00:03:16,740
And then it needs to go.

54
00:03:16,740 --> 00:03:21,730
In this case to port 3000 which will actually be different for us in cloud 9.

55
00:03:21,960 --> 00:03:29,920
But if I go to Port 3000 and I refresh I get the home page because I made a request to slash and there's

56
00:03:29,940 --> 00:03:34,230
some code that when I make a request to slash sends me the home page.

57
00:03:34,230 --> 00:03:42,060
Same thing if I go to slash dogs there is another bit of code that is listening for a request as a get

58
00:03:42,060 --> 00:03:46,170
request to slash dugs and it sends me all the dogs back.

59
00:03:46,200 --> 00:03:53,990
And then lastly I can make a new dog and hit submit and that sends a post request to slash create dog

60
00:03:54,000 --> 00:03:54,090
.

61
00:03:54,270 --> 00:03:55,690
And this code is wrong.

62
00:03:55,740 --> 00:03:55,970
All right.

63
00:03:55,980 --> 00:03:59,140
So that's all I wanted to review before we move on to writing our own code.

64
00:03:59,160 --> 00:04:04,890
The one big takeaway from all of that if you just totally slept through it the one big takeaway is routes

65
00:04:05,000 --> 00:04:06,080
routes are important.

66
00:04:06,110 --> 00:04:11,020
Rasner how we listen for particular requests and then run some other code depending on the requests

67
00:04:11,020 --> 00:04:12,080
that we get.

68
00:04:12,600 --> 00:04:15,490
OK so now it's the moment that you've been waiting for.

69
00:04:15,540 --> 00:04:16,930
Hopefully you've been waiting for this.

70
00:04:16,950 --> 00:04:23,070
We're going to go ahead and create our first express app so I'm going to go back to cloud nine and I'm

71
00:04:23,070 --> 00:04:25,050
going to make a new directory.

72
00:04:25,860 --> 00:04:35,060
I'm just going to call it first express app and CD into that and then I'm going to make a new file app

73
00:04:35,330 --> 00:04:44,460
yes and then we'll open that up and we'll start just constantly logging our express app.

74
00:04:44,460 --> 00:04:48,940
We'll go here and save and let's just run it.

75
00:04:49,140 --> 00:04:51,020
And all right we get our console log.

76
00:04:51,240 --> 00:04:57,990
So now what we need to do is install Express and if I go back to the Express docks you can see we just

77
00:04:57,990 --> 00:05:04,110
run NPM install express and I did mention in the last video that we were going to talk about dash dash

78
00:05:04,110 --> 00:05:08,070
save in this video and we are going to keep it until the very end.

79
00:05:08,100 --> 00:05:11,080
It doesn't make a difference at all in the functionality of Express.

80
00:05:11,160 --> 00:05:13,060
So we're going to leave it until later in the video.

81
00:05:13,110 --> 00:05:19,740
So we want to install Express and if we type LS Of course there isn't a node modules directory yet but

82
00:05:19,740 --> 00:05:26,400
if we do NPM install express I'll take a moment.

83
00:05:26,420 --> 00:05:31,310
This is definitely a bigger download than the other things that we've installed so far.

84
00:05:31,310 --> 00:05:37,760
I now have a safe LS a node modules directory or I really refresh my file tree.

85
00:05:37,760 --> 00:05:43,820
You see no modules I have express and instead of node modules there are a lot of directories.

86
00:05:43,930 --> 00:05:49,490
A lot of files and this is all of the logic all of the code that makes the framework that we don't have

87
00:05:49,490 --> 00:05:50,900
to write ourself.

88
00:05:50,900 --> 00:05:52,370
So we'll close out of that.

89
00:05:52,370 --> 00:05:58,460
And the next thing that we need to do of course is require expressed in our application so we'll do

90
00:05:58,460 --> 00:05:59,060
far.

91
00:05:59,090 --> 00:06:04,070
Express equals require express just like that.

92
00:06:04,490 --> 00:06:06,950
And that will then import the module express.

93
00:06:07,130 --> 00:06:14,150
But unlike the earlier libraries or packages we've seen like Cat me where we said var Cat me equals

94
00:06:14,160 --> 00:06:19,580
require Cat me and then to use it all we had to do was say Cat me.

95
00:06:19,850 --> 00:06:25,060
In this case Cat me only has one thing that it does one simple function just like knock knock jokes

96
00:06:25,070 --> 00:06:26,820
only had one function as well.

97
00:06:26,990 --> 00:06:32,310
Well Express has lots and lots of different methods so we can't just execute express like this.

98
00:06:32,360 --> 00:06:39,010
To use it although we will be executing it and saving it to a variable which most people call app.

99
00:06:39,110 --> 00:06:45,440
So var express equals require express that just includes all the contents of this express directory

100
00:06:45,670 --> 00:06:50,060
and then we execute it and save it to a variable called app that everything that we do with Express

101
00:06:50,180 --> 00:06:53,920
will be app dot and then some method that express comes with.

102
00:06:54,170 --> 00:06:58,250
Now that we have express installed and initialized it's always a good idea just to make sure that it

103
00:06:58,250 --> 00:06:58,910
works.

104
00:06:58,910 --> 00:07:00,800
So let's try running node apps.

105
00:07:00,890 --> 00:07:01,430
Yes.

106
00:07:01,520 --> 00:07:03,920
Nothing should happen as long as we don't get an error.

107
00:07:03,950 --> 00:07:05,750
That means that we're good to go.

108
00:07:05,750 --> 00:07:07,930
Now we're going to define our first route.

109
00:07:08,060 --> 00:07:10,060
We're going to make it very simple application.

110
00:07:10,220 --> 00:07:17,880
When you go to slash you're going to get a message that says hi.

111
00:07:19,190 --> 00:07:27,720
And when you go to slash goodbye or let's just do buy you'll get a message that says good bye.

112
00:07:28,640 --> 00:07:35,510
And then also do one more which is when you go to slash dog you get a message that says meow.

113
00:07:35,960 --> 00:07:40,700
So three different routes three different places we can make a request to and we can get three different

114
00:07:40,700 --> 00:07:43,460
responses depending on where we request.

115
00:07:43,460 --> 00:07:46,230
So the syntax for defining a route looks like this.

116
00:07:46,250 --> 00:07:47,540
We'll start with this first one.

117
00:07:47,550 --> 00:07:55,670
The high there and we write app dot gets an app to get takes two different parameters.

118
00:07:55,670 --> 00:08:00,350
The first one is the euro or the path which is slash.

119
00:08:00,350 --> 00:08:05,030
In this case because we're trying to make a route when a user makes a get request which is what they

120
00:08:05,030 --> 00:08:13,700
get here means we will see apt up posts later on and even update the leads and patch and put some of

121
00:08:13,700 --> 00:08:15,360
the other HTP verbs.

122
00:08:15,470 --> 00:08:17,250
But getting posts are the most common.

123
00:08:17,390 --> 00:08:23,450
So apt get when you get requests made to slash which is also called the root path or just the route

124
00:08:23,460 --> 00:08:23,960
.

125
00:08:24,320 --> 00:08:29,330
Then we want this code to run which is a callback function and this callback function takes two different

126
00:08:29,330 --> 00:08:32,670
arguments requests and response.

127
00:08:32,750 --> 00:08:35,880
Again those are whatever we want them to be called totally up to us.

128
00:08:36,020 --> 00:08:42,470
But you'll see this most often and I think in fact on the official express docs that's what they use

129
00:08:42,710 --> 00:08:44,260
req in rez.

130
00:08:44,300 --> 00:08:51,080
Some people actually type it all out request and response but reckon rise is much more common to see

131
00:08:51,320 --> 00:08:57,740
so reckon Reds are actually objects inside of this function request is an object that contains all the

132
00:08:57,740 --> 00:09:03,740
information about the request that was made that triggered this route and response will contain all

133
00:09:03,740 --> 00:09:07,020
of the information about what we're going to respond with.

134
00:09:07,040 --> 00:09:10,550
So I'll show you that in a little bit will cancel that log it will see what it looks like.

135
00:09:10,760 --> 00:09:14,620
But to start we're going to write rez dot send.

136
00:09:15,350 --> 00:09:16,790
Hi there.

137
00:09:16,790 --> 00:09:22,880
And this is just a way of responding with some text but if we go to the page of our app once we serve

138
00:09:22,880 --> 00:09:25,930
it once it started then we expect to get the text.

139
00:09:25,950 --> 00:09:30,980
Hi there printed out to us in the browser this isn't going to work just yet though.

140
00:09:31,100 --> 00:09:38,030
Because if I run this note app yes nothing happens because we're missing one really important part of

141
00:09:38,030 --> 00:09:39,410
code in Express.

142
00:09:39,410 --> 00:09:44,280
We actually have to write the code to tell it to listen for different requests to do that.

143
00:09:44,300 --> 00:09:46,690
EXPRESS gives us a method called listen.

144
00:09:46,880 --> 00:09:47,420
So all right.

145
00:09:47,440 --> 00:09:54,950
Apt up listen and then we need to provided the port to listen on and I'll show you in my example here

146
00:09:54,950 --> 00:09:55,270
.

147
00:09:55,460 --> 00:10:00,830
I was listening on port three thousand but because we're on cloud nine we have to do things a little

148
00:10:00,830 --> 00:10:01,720
bit differently.

149
00:10:02,030 --> 00:10:08,230
We need to listen on process that NVI ports.

150
00:10:08,510 --> 00:10:14,720
So all of this code will actually just return a number like 3000 except it returns the number of cloud

151
00:10:14,720 --> 00:10:16,640
nine server that we have to use.

152
00:10:16,640 --> 00:10:17,650
So this is a variable.

153
00:10:17,660 --> 00:10:22,130
It's called an environment variable and the environment variable that we're working with is called port

154
00:10:22,130 --> 00:10:22,330
.

155
00:10:22,340 --> 00:10:25,700
So this will return a number but we don't hardcoded the number in.

156
00:10:25,790 --> 00:10:27,150
It's coming from cloud nine.

157
00:10:27,380 --> 00:10:33,380
There's one other piece of information that we should pass in which is process that EMV IP.

158
00:10:33,620 --> 00:10:36,560
And this is a line that you can just copy and paste from app to app.

159
00:10:36,590 --> 00:10:40,490
We'll be using it at the bottom of every single application that we make with Express.

160
00:10:40,490 --> 00:10:43,290
So it's one of those just cookie cutter lines that we need to use.

161
00:10:43,370 --> 00:10:49,130
This tells express to listen on a particular port that cloud 9 wants to and a particular IP that cloud

162
00:10:49,130 --> 00:10:56,300
nine expects it to as well so to summarize we initialized express safety to the area will we defined

163
00:10:56,300 --> 00:10:59,580
a single route when we make a get request to slash.

164
00:10:59,570 --> 00:11:06,020
We should see a they're sent back in the response in our browser and just defining the route isn't enough

165
00:11:06,020 --> 00:11:06,200
.

166
00:11:06,240 --> 00:11:09,980
We then have to tell the app to listen on a particular port an IP address.

167
00:11:10,230 --> 00:11:15,780
And now we just need to start the server with node apps that will run the entire contents of the file

168
00:11:15,770 --> 00:11:16,220
.

169
00:11:16,230 --> 00:11:17,470
You'll see our cursor changes.

170
00:11:17,490 --> 00:11:21,380
We can actually type commands anymore because our server has started.

171
00:11:21,380 --> 00:11:23,580
There is one small thing we can do to improve this.

172
00:11:23,650 --> 00:11:30,800
So when it Control-C out of that and we can pass in callback function to APT listen as well.

173
00:11:30,890 --> 00:11:38,840
And inside of here we'll just you cancel that log server has started just like that and save it now

174
00:11:38,890 --> 00:11:44,900
going to clear and start the server again and we get this message that says server has started just

175
00:11:44,900 --> 00:11:50,660
so that it's clear what's happening with our consul now to visit this site unlike the local version

176
00:11:50,660 --> 00:11:57,570
that I showed with sublime and the dog demo where I went to local host Colan 3000 Clubine actually hosted

177
00:11:57,560 --> 00:12:03,590
online at your own you are well and you can find that by clicking on preview and click on Preview running

178
00:12:03,600 --> 00:12:06,790
application and that will open up a new tab.

179
00:12:06,940 --> 00:12:09,530
And if we want to we can just use the tab here.

180
00:12:09,560 --> 00:12:16,130
I prefer to copy the role and open up a new tab and paste that in so that I can actually just use it

181
00:12:16,130 --> 00:12:22,340
in the browser without having to go through cloud 9 is fake browser so close out of that and you'll

182
00:12:22,350 --> 00:12:31,610
see though my role is the name of my workspace web dev who camp dash my user name dot C-9 dot.

183
00:12:31,880 --> 00:12:37,680
So whatever you're serving in that workspace which right now is this one file apt.

184
00:12:37,800 --> 00:12:44,600
Yes instead of first express app will be at the row that is given to you for free automatically when

185
00:12:44,610 --> 00:12:47,680
you create a cloud nine workspace and more exciting than that.

186
00:12:47,780 --> 00:12:49,570
We can see that we get high there.

187
00:12:49,790 --> 00:12:54,090
It's working and making a request to the root of the server just slash.

188
00:12:54,230 --> 00:12:55,800
And I'm getting high there.

189
00:12:56,000 --> 00:13:02,720
And if we try doing something else like this you'll get a message that says cannot get that you are

190
00:13:02,750 --> 00:13:04,500
will this path that I added.

191
00:13:04,640 --> 00:13:06,890
So let's add in another out now.

192
00:13:07,110 --> 00:13:08,400
The exact same pattern.

193
00:13:08,450 --> 00:13:10,010
Let's do the buy route.

194
00:13:10,010 --> 00:13:13,890
So we want an app don't get slash.

195
00:13:14,490 --> 00:13:20,760
And then our function request response just like that.

196
00:13:20,750 --> 00:13:29,160
And we will send red dots and goodbye just like that and save that.

197
00:13:29,210 --> 00:13:32,050
Now if we go to slash buy and hit enter.

198
00:13:32,180 --> 00:13:33,720
You'll see that it still doesn't work.

199
00:13:33,890 --> 00:13:36,260
And that's because we have to restart the server.

200
00:13:36,560 --> 00:13:39,690
So any time we make some changes need to restart the server.

201
00:13:39,840 --> 00:13:44,010
For now I'm going to show you a tool that will help us so that we don't have to constantly restart it

202
00:13:44,010 --> 00:13:44,130
.

203
00:13:44,250 --> 00:13:53,760
But for now I need to do node Abdulle J.S. again save or refresh this time if we go to slash by.

204
00:13:53,950 --> 00:13:59,480
I now get my goodbye message and if I go to the root I get high there.

205
00:13:59,960 --> 00:14:01,230
So let's do one more now.

206
00:14:01,430 --> 00:14:02,350
Let's go back.

207
00:14:02,580 --> 00:14:11,420
So apt get sloshed dog or call back with requests and response and then instead of that we're going

208
00:14:11,420 --> 00:14:13,540
to respond.

209
00:14:13,660 --> 00:14:16,480
RAZ And meow.

210
00:14:16,520 --> 00:14:17,230
What was I thinking.

211
00:14:17,250 --> 00:14:18,530
Why did I say meow.

212
00:14:18,890 --> 00:14:20,390
All right well I'm going to go with it.

213
00:14:20,490 --> 00:14:26,990
Definitely should have female but if I start my server again I restarted Control-C to quit and they

214
00:14:27,000 --> 00:14:32,600
hit the up arrow and I run node after JSC again and I go back here I refresh.

215
00:14:32,610 --> 00:14:40,460
And now I go to slash dog get me out and I can go to slash by the gate goodbye and I can go to slash

216
00:14:41,060 --> 00:14:43,300
nothing and get high there.

217
00:14:44,050 --> 00:14:46,800
So that's all we're doing for this very first express app.

218
00:14:46,940 --> 00:14:47,840
Before we move on.

219
00:14:47,900 --> 00:14:51,680
I'm going to open up postman and test our application out.

220
00:14:51,890 --> 00:14:58,520
So we're going to make a get request and we'll do it to the slash dog route just to test it out and

221
00:14:58,520 --> 00:15:05,970
rather than local hosts 3000 slash dog we need to make a request to this you Arel slash dog.

222
00:15:06,170 --> 00:15:11,020
So I'm going to copy this and go back to postman and just paste that you are Ellen.

223
00:15:11,390 --> 00:15:17,610
And before we do anything else you know resize this and resize this window as well and we can close

224
00:15:18,140 --> 00:15:23,590
or shrink this down a bit it's going to make a request to this Web Dev Bootcamp dash learn with Colt

225
00:15:23,720 --> 00:15:25,990
C9 Daddy-O slash dog of course.

226
00:15:26,000 --> 00:15:29,270
This you also will match your own cloud 9 count.

227
00:15:29,660 --> 00:15:35,780
And what I'm going to do is instead of my app dog I'm going to add a Dalt log.

228
00:15:36,020 --> 00:15:37,190
And it's just going to say

229
00:15:40,460 --> 00:15:51,560
someone made a request to slash dog and we'll save that and this console blog is going to appear down

230
00:15:51,570 --> 00:15:52,270
here.

231
00:15:52,460 --> 00:15:57,320
It's not going to appear in the browser inside of the JavaScript debugging console.

232
00:15:57,380 --> 00:16:03,150
The front and con. It appears in the node console here that we have started by running node apps.

233
00:16:03,200 --> 00:16:04,040
Yes.

234
00:16:04,040 --> 00:16:11,420
So if I restart the server and I'll start by just showing you if I move this over here and I refresh

235
00:16:11,420 --> 00:16:14,660
the page let me go to another page and refresh.

236
00:16:14,660 --> 00:16:22,240
And now if I go to slash dogs or dog watch down here it says someone has made a request to Slashdot

237
00:16:22,250 --> 00:16:22,840
.

238
00:16:22,860 --> 00:16:27,950
So that's just to show you that that code is triggered as soon as we make a request and it's not only

239
00:16:27,950 --> 00:16:33,510
triggered by our browser but we can also trigger it by using postman which I'll show now.

240
00:16:33,530 --> 00:16:38,920
So all I need to do is hit enter here or send and we got another.

241
00:16:38,920 --> 00:16:43,380
Someone made a request to slash dog but also a full screen postman.

242
00:16:43,380 --> 00:16:46,530
Now let's look at what was sent back.

243
00:16:46,970 --> 00:16:48,680
So the body is just meow.

244
00:16:48,900 --> 00:16:53,880
I don't know what I was thinking I'd do it now but we got some text back meow and we can do the same

245
00:16:53,880 --> 00:17:00,090
thing by going to just the right path and sending a request and we get high there and we can also do

246
00:17:00,120 --> 00:17:01,050
slash by.

247
00:17:01,250 --> 00:17:02,760
And we also get the same thing.

248
00:17:03,050 --> 00:17:07,680
So this is to show you that these requests it doesn't matter where they originate from if it's from

249
00:17:07,670 --> 00:17:08,500
a browser.

250
00:17:08,690 --> 00:17:14,310
A phone with the browser if it's from a terminal somewhere or something like Postman it doesn't matter

251
00:17:14,300 --> 00:17:14,570
.

252
00:17:14,580 --> 00:17:20,220
Our server is just listening for any request that's a get request to three different routes.

253
00:17:20,510 --> 00:17:26,930
Dog by and the route route and when it gets one of those requests it will then respond with some simple

254
00:17:26,930 --> 00:17:27,840
text.

255
00:17:27,840 --> 00:17:28,240
All right.

256
00:17:28,260 --> 00:17:31,790
So that's all I wanted to cover in this first intro to express app.

257
00:17:31,800 --> 00:17:37,470
I know it's really really simple it hasn't amounted to much yet as an application but trust me the order

258
00:17:37,460 --> 00:17:39,650
that we're going in is very very deliberate.

259
00:17:39,650 --> 00:17:45,090
We're starting small and we're going to add one piece at a time the next few pieces that we'll add are

260
00:17:45,090 --> 00:17:47,050
responding with HQ mail files.

261
00:17:47,070 --> 00:17:52,580
So rather than read that send there's another method that we'll use to send an entire file of H.T. mail

262
00:17:52,590 --> 00:17:57,550
back and we'll also introduce a concept called Raut variables or path variables.

263
00:17:57,780 --> 00:17:59,000
OK I'll see you in the next video
