├── README.md └── server.js /README.md: -------------------------------------------------------------------------------- 1 | # nodejs-test 2 | 3 | 4 | ## 启动应用 5 | 6 | `node server.js 8888` 7 | 8 | 或者 9 | 10 | `node server 8888` 11 | 12 | ## 添加路由 13 | 14 | 1. 编辑 server.js 文件,添加 if else 15 | 2. 重新运行 node server.js 8888 16 | 17 | 18 | 19 | ## 后台启动应用 20 | 21 | touch log 22 | `node server.js 8888 >log log 2>&1 &` 23 | -------------------------------------------------------------------------------- /server.js: -------------------------------------------------------------------------------- 1 | var http = require('http') 2 | var fs = require('fs') 3 | var url = require('url') 4 | var port = process.argv[2] 5 | 6 | if(!port){ 7 | console.log('请指定端口号好不啦?\nnode server.js 8888 这样不会吗?') 8 | process.exit(1) 9 | } 10 | 11 | var server = http.createServer(function(request, response){ 12 | var parsedUrl = url.parse(request.url, true) 13 | var pathWithQuery = request.url 14 | var queryString = '' 15 | if(pathWithQuery.indexOf('?') >= 0){ queryString = pathWithQuery.substring(pathWithQuery.indexOf('?')) } 16 | var path = parsedUrl.pathname 17 | var query = parsedUrl.query 18 | var method = request.method 19 | 20 | /******** 从这里开始看,上面不要看 ************/ 21 | 22 | console.log('有个傻子发请求过来啦!路径(带查询参数)为:' + pathWithQuery) 23 | 24 | if(path === '/'){ 25 | response.statusCode = 200 26 | response.setHeader('Content-Type', 'text/html;charset=utf-8') 27 | response.write(`二哈`) 28 | response.end() 29 | } else if(path === '/x'){ 30 | response.statusCode = 200 31 | response.setHeader('Content-Type', 'text/css;charset=utf-8') 32 | response.write(`body{color: red;}`) 33 | response.end() 34 | } else { 35 | response.statusCode = 404 36 | response.setHeader('Content-Type', 'text/html;charset=utf-8') 37 | response.write(`你输入的路径不存在对应的内容`) 38 | response.end() 39 | } 40 | 41 | /******** 代码结束,下面不要看 ************/ 42 | }) 43 | 44 | server.listen(port) 45 | console.log('监听 ' + port + ' 成功\n请用在空中转体720度然后用电饭煲打开 http://localhost:' + port) 46 | 47 | 48 | --------------------------------------------------------------------------------