node.js学习1:从Hello World到使用sqlite3

  1. 安装
    对于苹果电脑来说,node是默认装在系统中的,和sqlite3一样。我们在终端中输入node就可以进入node的交互模式REPL,在这里我们可以演练各种纯js代码。如果代码输错了可以使用ctrl+c另起一行,如果想退出repl就输入.exit

  2. 创建一个服务,在前端输出“山竹台风好犀利!”
    打开vscode,新建一个项目文件夹,创建一个叫helloworld.js的文件。输入如下代码后按f5即可开启一个node服务,然后在浏览器中输入localhost:8000即可看到这行汉字了。

// 相当于Python中的import http as http_listener
http_listener = require('http')

http_listener.createServer(function (request, response) {
    // 响应HTTP头部:状态值200,内容类型text/plain
    response.writeHead(200, {'Content-Type': 'text/plain; charset=utf8'})

    // 响应数据
    response.end('山竹台风好犀利!')
}).listen(8000)

// 终端打印如下信息
console.log('创建服务成功')

注1:createServer创建的是一个Server对象的实例,我们也可以先拿到实例再打开8000端口。
注2:Content-Type里面的charset=utf8属性我们一定要加上,不然服务器不会按照utf8对汉字进行编码,浏览器解码后得到的就不是汉字了。

  1. 使用cnpm安装sqlite3
    sqlite3模块是一个第三方模块,所以我们要通过npm安装,类似于python中的pip install。安装之前我们要先配置淘宝源并获得cnpm命令。这里要感谢阿里做了这样一件好事,就拿下载sqlite3来说,相当于淘宝源是灰机,海外源是三轮车。命令如下:
npm install -g cnpm --registry=https://registry.npm.taobao.org

然后,进入我们的项目路径,输入:cnpm install sqlite3
注:node的包管理思想是,每一个项目用一套依赖,如果要新开一个项目,那就对这个项目重新装第三方包。反观现在python web项目也在使用这种思想了,例如virtualenv的使用。
装好后我们可以输入npm list来查看新的包情况。这时候发现多了很多包,而且出现了一大堆的npm ERR! extraneous。发生这个问题的原因是sqlite3因为依赖关系装了很多包,而这些包并没有被项目使用,所以报了这个warning。解决这个问题网上介绍的方法是输入npm prune,忽略这些警告,但实际上并不管用。既然这只是个警告并不影响使用,只好先不管他了。

  1. 使用sqlite3

推荐阅读更多精彩内容