@@ -160,11 +160,11 @@ <h2>无状态的http协议</h2>
160160
161161< p > TODO: 此处该补出一张express在node中得位置图片</ p >
162162
163- < h2 > node 基础</ h2 >
163+ < h2 > Node 基础</ h2 >
164164
165165< p > see < a href ="https://github.com/nodeonly/nodejs-tutorial/blob/master/doc/day3_node.md "> node 基础</ a > </ p >
166166
167- < h2 > node 版本的http server</ h2 >
167+ < h2 > Node 版本的http server</ h2 >
168168< div class ="highlight "> < pre > < span class ="vg "> var</ span > < span class ="w "> </ span > < span class ="vg "> http</ span > < span class ="w "> </ span > < span class ="o "> =</ span > < span class ="w "> </ span > < span class ="vg "> require</ span > < span class ="p "> (</ span > < span class ="c1 "> 'http');</ span >
169169
170170< span class ="vg "> http</ span > < span class ="o "> .</ span > < span class ="vg "> createServer</ span > < span class ="p "> (</ span > < span class ="vg "> function</ span > < span class ="p "> (</ span > < span class ="vg "> request</ span > < span class ="p "> ,</ span > < span class ="vg "> response</ span > < span class ="p "> ){</ span >
@@ -174,7 +174,7 @@ <h2>node 版本的http server</h2>
174174</ pre > </ div >
175175< p > 这就是最简单的实现</ p >
176176
177- < h2 > node connect 版本的http server</ h2 >
177+ < h2 > Node connect 版本的http server</ h2 >
178178
179179< p > Connect is an extensible HTTP server framework for node using "plugins" known as middleware.</ p >
180180< div class ="highlight "> < pre > < span class ="vg "> var</ span > < span class ="w "> </ span > < span class ="vg "> connect</ span > < span class ="w "> </ span > < span class ="o "> =</ span > < span class ="w "> </ span > < span class ="vg "> require</ span > < span class ="p "> (</ span > < span class ="c1 "> 'connect')</ span >
@@ -216,7 +216,8 @@ <h2>安装Express</h2>
216216< h3 > 如何手动安装</ h3 >
217217
218218< p > 新建文件夹:</ p >
219- < div class ="highlight "> < pre > < span class ="err "> $</ span > < span class ="vg "> mkdir</ span > < span class ="w "> </ span > < span class ="o "> /</ span > < span class ="vg "> getting</ span > < span class ="w "> </ span > < span class ="vg "> start</ span > < span class ="o "> /</ span > < span class ="vg "> app</ span >
219+ < div class ="highlight "> < pre > < span class ="nv "> $ </ span > mkdir /getting start/app
220+ < span class ="nv "> $ </ span > npm init
220221</ pre > </ div >
221222< p > < img src ="./images/expressimg7.jpg " alt ="Mou icon "> </ p >
222223
@@ -250,10 +251,7 @@ <h4>安装</h4>
250251< p > 如果安装失败,尝试加sudo权限:</ p >
251252< div class ="highlight "> < pre > < span class ="err "> $</ span > < span class ="vg "> sudo</ span > < span class ="w "> </ span > < span class ="vg "> npm</ span > < span class ="w "> </ span > < span class ="vg "> install</ span > < span class ="w "> </ span > < span class ="o "> -</ span > < span class ="vg "> g</ span > < span class ="w "> </ span > < span class ="vg "> express</ span > < span class ="o "> -</ span > < span class ="vg "> generator</ span >
252253</ pre > </ div >
253- < p > 现在新建一个文件夹装我们的express应用:</ p >
254- < div class ="highlight "> < pre > < span class ="err "> $</ span > < span class ="vg "> mkdir</ span > < span class ="w "> </ span > < span class ="vg "> expressApp</ span >
255- </ pre > </ div >
256- < p > 然后执行:</ p >
254+ < p > 现在新建一个我们的express应用,执行:</ p >
257255< div class ="highlight "> < pre > < span class ="err "> $</ span > < span class ="vg "> express</ span > < span class ="w "> </ span > < span class ="vg "> expressApp</ span >
258256</ pre > </ div >
259257< p > 项目创建完毕,文件结构如下:</ p >
@@ -304,8 +302,8 @@ <h3>请求request</h3>
304302< li > body</ li >
305303< li > header</ li >
306304< li > params</ li >
307- < li > query
308- ....</ li >
305+ < li > query</ li >
306+ < li > ....</ li >
309307</ ul >
310308
311309< h3 > 响应response</ h3 >
@@ -322,6 +320,20 @@ <h3>理解路由</h3>
322320< li > 地址1:谁来处理,以什么方式处理</ li >
323321< li > 地址2:谁来处理,以什么方式处理</ li >
324322</ ul >
323+ < div class ="highlight "> < pre > < span class ="w "> </ span > < span class ="vg "> var</ span > < span class ="w "> </ span > < span class ="vg "> express</ span > < span class ="w "> </ span > < span class ="o "> =</ span > < span class ="w "> </ span > < span class ="vg "> require</ span > < span class ="p "> (</ span > < span class ="c1 "> 'express');</ span >
324+ < span class ="w "> </ span > < span class ="vg "> var</ span > < span class ="w "> </ span > < span class ="vg "> app</ span > < span class ="w "> </ span > < span class ="o "> =</ span > < span class ="w "> </ span > < span class ="vg "> express</ span > < span class ="p "> ();</ span >
325+
326+ < span class ="w "> </ span > < span class ="vg "> app</ span > < span class ="o "> .</ span > < span class ="vg "> get</ span > < span class ="p "> (</ span > < span class ="c1 "> '/',function(req,res){</ span >
327+ < span class ="w "> </ span > < span class ="vg "> res</ span > < span class ="o "> .</ span > < span class ="vg "> send</ span > < span class ="p "> (</ span > < span class ="c1 "> 'hello,world');</ span >
328+ < span class ="w "> </ span > < span class ="p "> });</ span >
329+
330+ < span class ="w "> </ span > < span class ="vg "> app</ span > < span class ="o "> .</ span > < span class ="vg "> post</ span > < span class ="p "> (</ span > < span class ="c1 "> '/someur',function(req,res){</ span >
331+ < span class ="w "> </ span > < span class ="vg "> res</ span > < span class ="o "> .</ span > < span class ="vg "> send</ span > < span class ="p "> (</ span > < span class ="c1 "> 'hello,world');</ span >
332+ < span class ="w "> </ span > < span class ="p "> });</ span >
333+
334+ < span class ="w "> </ span > < span class ="vg "> app</ span > < span class ="o "> .</ span > < span class ="vg "> listen</ span > < span class ="p "> (</ span > < span class ="il "> 5000</ span > < span class ="p "> );</ span >
335+ </ pre > </ div >
336+ < p > 说明一下</ p >
325337
326338< h3 > session</ h3 >
327339
@@ -361,7 +373,7 @@ <h4>应用场景: 购物车</h4>
361373< ul >
362374< li > 保证当前session里有用户信息,用户是登陆状态的</ li >
363375< li > 用户在购物页面操作,点击加入购物车,此时在session里增加一条信息,存储当前物品信息</ li >
364- < li > 用户结算的时候,从session获取物品架构和数量 ,计算出总价,订单完成后,清理session</ li >
376+ < li > 用户结算的时候,从session获取物品价格和数量 ,计算出总价,订单完成后,清理session</ li >
365377</ ul >
366378
367379< h3 > 理解模板jade</ h3 >
@@ -377,37 +389,44 @@ <h3>理解模板jade</h3>
377389< h3 > 理解public目录</ h3 >
378390
379391< ul >
380- < li > < p > 常规做法</ p >
381-
382- < p > app.use(express.static(path.join(__dirname, 'public')));</ p > </ li >
392+ < li > 常规做法</ li >
383393</ ul >
384394
385- < p > 来托管pubblic中得所有文件。</ p >
395+ < p > app.js里</ p >
396+ < div class ="highlight "> < pre > < span class ="vg "> app</ span > < span class ="o "> .</ span > < span class ="vg "> use</ span > < span class ="p "> (</ span > < span class ="vg "> express</ span > < span class ="o "> .</ span > < span class ="vg "> static</ span > < span class ="p "> (</ span > < span class ="vg "> path</ span > < span class ="o "> .</ span > < span class ="vg "> join</ span > < span class ="p "> (</ span > < span class ="vg "> __dirname</ span > < span class ="p "> ,</ span > < span class ="w "> </ span > < span class ="c1 "> 'public')));</ span >
397+ </ pre > </ div >
398+ < p > 它就是用来托管public中得所有文件。可以以http方式访问</ p >
386399
387- < ul >
388- < li > 如何在静态页面处理请求参数</ li >
389- </ ul >
400+ < p > 说明</ p >
401+
402+ < p > ####如果public/index.html不存在</ p >
403+
404+ < p > 此时如何使用其他页面做为入口,需要再< code > /</ code > 路由定义处,redirect到对应页面(by kezhi)。</ p >
390405
391- < p > 在静态页面处理请求参数,是通过连接地址把参数传递过去,通过前端jacascript取出做处理。</ p >
406+ < h4 > 如何在静态页面处理请求参数</ h4 >
407+
408+ < p > 在静态页面处理请求参数,是通过连接地址把参数传递过去,通过前端jacascript取出做处理(by kezhi)。</ p >
392409
393410< h4 > 理解express.static</ h4 >
394411
395- < p > 区分express.static和http-server的差别</ p >
412+ < p > 说明http-server用法</ p >
413+
414+ < p > 区分express.static和http-server的差别:功能一样,用法上有差异</ p >
396415
397416< p > http-server只做静态托管文件,输出请求文件,无法拦截到请求参数;
398417express.static不仅可以托管静态文件,并且提供接口可以拦截到前端页面的请求参数,并且可以控制返回数据;(这句是错的)</ p >
399418
400419< h4 > 路由冲突</ h4 >
401420
402- < p > 当public /index.html和路由的 < code > /</ code > 冲突</ p >
421+ < p > 当 < code > public /index.html </ code > 和路由的 < code > /</ code > 冲突</ p >
403422
404- < p > 此时按照public /index.html走 </ p >
423+ < p > 此时按照 < code > public /index.html </ code > 走 </ p >
405424
406425< h2 > 任务</ h2 >
407426
408427< p > 此处开始是大家每个人都必须亲手做的练习</ p >
409428
410- < ul >
429+ < ol >
411430< li > 路由定制方式</ li >
412431< li > 如何处理get请求</ li >
413432< li > 如何处理post请求</ li >
@@ -417,7 +436,7 @@ <h2>任务</h2>
417436< li > 完成api返回</ li >
418437< li > 完成登陆</ li >
419438< li > 完成购物车</ li >
420- </ ul >
439+ </ ol >
421440
422441< h3 > 路由定制方式</ h3 >
423442
@@ -428,7 +447,7 @@ <h3>路由定制方式</h3>
428447< li > 使用路由重定向</ li >
429448</ ul >
430449
431- < h4 > 常规定义路由: </ h4 >
450+ < h4 > 常规定义路由</ h4 >
432451< div class ="highlight "> < pre > < span class ="vg "> var</ span > < span class ="w "> </ span > < span class ="vg "> express</ span > < span class ="w "> </ span > < span class ="o "> =</ span > < span class ="w "> </ span > < span class ="vg "> require</ span > < span class ="p "> (</ span > < span class ="c1 "> 'express');</ span >
433452< span class ="vg "> var</ span > < span class ="w "> </ span > < span class ="vg "> app</ span > < span class ="w "> </ span > < span class ="o "> =</ span > < span class ="w "> </ span > < span class ="vg "> express</ span > < span class ="p "> ();</ span >
434453
0 commit comments