demo素材
在github上搜了一个node的demo,来自 (https://github.com/hubwiz/example-node)
是一个线上学习和练习编程的网站,汇智网。
此demo使用了node.js的express框架。
安装node
当然,如果之前没有使用过node的话,首先需要安装node,去官网下载mac的安装包。或者直接使用homebrew安装。
brew update
brew install node
安装好node之后,会自动装好npm
,这是node开发必备的包管理工具。
可能当时也会安装工具n
,没错,就是一个字母。目的是为了快速更新nodejs的版本。
所以现在可以用npm更新一下node的版本,使用最新的稳定的版本来学习。
mongodb的安装
然后使用brew安装mongodb。安装好之后,启动一下试一下,发现有问题,那就是–dbpath可能不存在,需要启动时设置一下
mongod --dbpath /myDirectory/at/somewhere
mongodb的shell是mongo
,可以简单操练一下,之后就可以考虑下载一个可视化查看mongodb数据的工具。下载了一个robomongo,版本不支持mongo3.x,于是换了一个mongochef,还不错。
依赖包安装
进去demo所在的文件夹,先安装依赖包
npm install
就把package.js里面需要的包全部安装起来了,不过可能express-session这个模块已经过时了。
解决方法就是在app.js中加上两行,这个是查到其他人这样去解决的
app.use(session({
resave:false,//添加这行
saveUninitialized: true,//添加这行
secret:'secret',
cookie:{
maxAge:1000*60*30
}
}));
当然,这个package.js是怎么产生的呢?那是用express框架自动生成的。
如果从最开始写,那就需要express去创建这个框架。需要安装express-generator来生成这个框架。
大体上需要npm install express-generator -g
,或者可能需要sudo权限。
如果不用express-generator的话,可以使用npm init
去初始化一个node应用, node install express --save
, 就可以自己从头写一个全新的express的框架了。
不过这里是使用其他人已经写好的demo来测试,这些其实都是用generator生成的。
接着,启动程序
node app.js
就可以进去使用了,可以对照着mongodb的shell和mongochef看到数据中的各种变化。
node的express框架展示的代码的简易程度,比python的Django框架要简约,也比较好理解,值得一试。