nodejs之express 从零开始

本文详细介绍Express.js中的静态页面返回、Jade模板使用、文件上传处理等核心操作,并提供解决常见问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考网站:http://blog.youkuaiyun.com/loudyten/article/details/22096133

1,怎么在express中返回静态页面

我的目录结构是:

这样,在public中的文件是不需要添加路由的, 也就是说不用在app.get('name',...)中指定的,如果要访问postFile

请出入网址.

[html]  view plain copy print ?
  1. http://localhost:3000/htmlFile/postFile.html  


在Jade中使用函数遍历对象.

[javascript]  view plain copy print ?
  1. mixin users(users)  
  2.     ul  
  3.         each user in users  
  4.             li= user  
  5. - users = ['Tanya''Jose''Kim']  
  6. mixin users(users)  
  7. - more_users = ['Mark''Elena''Dave''Pete''Keiron']  
  8. mixin users(more_users)  

效果是: 


如何给jade模版文件传递参数

在路由项指定的文件之中

[javascript]  view plain copy print ?
  1. exports.postFile = function(req,res)  
  2. {  
  3.     var myInformation = {  
  4.         number : '20100600200',  
  5.         name : 'loudyten',  
  6.         address : 'uestc',  
  7.         faceBook: 'ahaohs'  
  8.     };  
  9.     res.render('postFile',{person: myInformation});  
  10. };  

在jade 文件当中

[javascript]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
  1. div#codeFrame  
  2.     p= person.number  
  3.     p= person.name  
  4.     p= person.address  
  5.     p= person.faceBook  

效果



express 处理文件上传

http://blog.youkuaiyun.com/newborn2012/article/details/16820741

在express 工程目录当中, 下面这句话要写在前面

[javascript]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
  1. app.use(express.bodyParser({ uploadDir: "./public/upload/" }));  

否则后面处理req.files的时候, 会出现undefined的情况, 如图


就是这样的..


然后改了之后


就好了, 这个问题我举得是最关键的问题, 因为网上不会有其他方式结局 req.files 一致是undefined 的问题. express 3.4.4 或者express  3.5.2

看到upload下面的很不一般的饿文件名就知道了.


使用taobao npm, 快速创建express工程

看一下这里就可以了


express 的相关路径问题

1,工程目录中的pulic文件夹中的文件可以忽略public目录进行访问, 当然使用相对路径时,添加public也是可以的,比如:

在public下有html/index.html, 那么启动程序之后, 可以通过

[html]  view plain copy print ?
  1. http://localhost:3000/html/index.html  

直接访问.

但是在js文件中, 可以添加或者不添加public相对路径, 比如:

[html]  view plain copy print ?
  1. res.sendfile('./public/html/index.html');  
  2. res.sendfile('/html/index.html');  

2,在views中的.jade模版不需要使用相对路径访问,比如:

res.render('index');

这样就会加载views/index.jade文件



window解决express找不到命令的问题

命令行提示:

'express' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

解决办法:

sudo npm install -g express
sudo npm install -g express-generator

参考来自:

http://cnodejs.org/topic/523a5570101e574521d882f6

http://cnodejs.org/topic/5348f21b2f31c85a7d01964e

爹就是这么被坑的。


express结构又改了,最新教程

http://cwbuecheler.com/web/tutorials/2013/node-express-mongo/



参考资料收藏:

介绍webSocket的 : http://javascript.ruanyifeng.com/bom/websocket.html

这里有很详细的express介绍: http://blog.youkuaiyun.com/wx_mdq/article/details/7644487


聊天程序的例子:

http://developer.51cto.com/art/201404/434686.htm

http://www.cnblogs.com/Wayou/p/hichat_built_with_nodejs_socket.html

http://www.cnblogs.com/meteoric_cry/archive/2012/07/26/2610792.html

编译器实现:

http://www.cnblogs.com/quixotic/archive/2012/01/16/2323541.html

http://www.codedump.info/?cat=48

那个不是一般的难1


tty:

http://blog.fens.me/nodejs-linux-sh-tty/


1. 安装nodejs 首先,需要在官方网站 https://nodejs.org/en/ 下载并安装nodejs。根据自己的操作系统选择相应的包进行安装。 2. 安装npm npm是nodejs的官方包管理工具。nodejs安装完成后,npm也会随之安装。可以在终端中输入以下命令进行验证: ``` npm -v ``` 如果输出了npm的版本号,则说明npm安装成功。 3. 创建第一个nodejs应用 接下来,我们创建第一个nodejs应用。在终端中进入到想要创建应用的目录中,然后输入以下命令: ``` mkdir myapp cd myapp npm init ``` 执行npm init命令会创建一个package.json文件,其中包含了应用的基本信息和依赖信息。 4. 创建入口文件 在myapp目录下,创建一个名为index.js的文件,作为应用的入口文件。将以下代码添加到index.js文件中: ``` console.log("Hello World!"); ``` 5. 运行应用 在终端中进入myapp目录,然后输入以下命令: ``` node index.js ``` 如果输出了“Hello World!”,则说明应用运行成功。 6. 安装第三方模块 nodejs有丰富的第三方模块可供使用。可以使用npm安装第三方模块。例如,安装一个用于处理http请求的模块: ``` npm install request --save ``` --save参数表示将模块信息添加到package.json文件中的dependencies字段中。 7. 使用第三方模块 在index.js文件中,引入已安装的模块并使用它。例如,使用request模块发起一个http请求: ``` const request = require('request'); request('https://www.baidu.com', function (error, response, body) { console.log(body); }); ``` 8. 学习nodejs API nodejs API文档详细介绍了nodejs提供的各种模块和函数。可以在官网上查看文档并学习使用。例如,学习使用fs模块读写文件: ``` const fs = require('fs'); fs.writeFile('message.txt', 'Hello Node.js', (err) => { if (err) throw err; console.log('The file has been saved!'); }); fs.readFile('message.txt', 'utf8', (err, data) => { if (err) throw err; console.log(data); }); ``` 以上就是nodejs从零开始学习的基本步骤。除此之外,还可以学习使用Express框架、WebSocket、数据库连接等高级应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值