Node.js是一个让JavaScript运行在服务器端的开发平台    参考文章

nodejs特点:

  1. 单线程
  2. 异步非阻塞i/o(异步相对节省资源,把那个等待的时间利用上了)
  3. 事件驱动
  4. 稳定性差(因为是单线程的,所以一旦哪里出现问题了,整个服务都要终止)

npm是nodejs的包管理工具,参考其他博客

nodejs   Windows下的安装。

接下来nodejs的使用:(写好代码后在文件所在目录使用命令行输入: node  文件名   即可运行。)

//引入内置的http包
var http = require('http');
//创建服务
var server = http.createServer(function(req,res){
//这里的匿名函数参数req是(request)请求,res(response)是响应
res.end(1111); //注意这里 括号里不管是什么都要加上‘引号’
});
console.log('ok');
//端口监听
server.listen(8080);

可以看到OK,说明启动成功。但是遇到一个问题,就是在浏览器上输入localhost:8080,找不到服务器

找到问题根源了,竟然是因为res.end(1111);没有加引号,我。。。TM。。。。以为数字不需要加引号,没想到nodejs如此特殊。res.end(111)改成res.end('111');就OK了。

获取请求的参数

  • 获取请求方式:var method = req.method;
  • 获取请求路径:var url = req.url;
  • 获取http版本号:var version = req.httpVersion;
  • 获取请求头信息:var headers = req.headers;   //这个是数组
  • 对于头信息,如果想要获取某个值,可以使用   .   或者   [ ]   来访问,如果数组键名含有 -   ,那么只能用  [ ]   来访问。比如 var userAgent = headers[user-agent]; 查看头信息可以使用console.log(headers);  在命令行中可以看到。(修改服务端代码,启动服务之后,刷新浏览器)
  • 解析URL:第一步需要先引入  var urlTool = require('url');   然后  var  data = urlTool.parse(url);    第一个参数URL是获取的请求路径。可以传第二个参数:true。作用是将解析后的部分字符串数据转换成对象。

最新文章

  1. Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) C.Ray Tracing (模拟或扩展欧几里得)
  2. codeforces 27E Number With The Given Amount Of Divisors
  3. LeetCode---Binary Search
  4. jsp中<!DOCTYPE>标签
  5. 14.高度最小的BST
  6. Lucene 基础理论 (zhuan)
  7. C++学习笔记15:操作符重载的函数原型列表(推荐)
  8. 《Pandoc用户指南》之一
  9. 【转】【阮一峰的网络日志】Git 使用规范流程
  10. System Operations on AWS - Lab 3W - Managing Storage (Windows)
  11. jquery下 选择器整理
  12. jsp跳转后台代码页的简易方式~
  13. appium 常用API使用总结!
  14. vhdl 数组
  15. Poj2018 Best Cow Fences
  16. spring和junit整合
  17. MySQL中TEXT与BLOB字段类型的区别
  18. Windows Server2008各版本区别
  19. Shell脚本(三)
  20. 手机中的js事件

热门文章

  1. jquery的scrollTop方法
  2. C++ 包含目录、库目录、附加包含目录、附加库目录、附加依赖项之详解(转)
  3. 7.bash作业控制
  4. 进阶Java编程(4)多线程深入话题
  5. C++内存分配和分区
  6. 与 QWidget 有关的 Qt 可视化组件的继承关系图
  7. springcloud(十二)-springcloud-config统一管理微服务配置
  8. 前段js实时判断会话是否超时
  9. vuejs 深度监听
  10. Hyperledger Fabric(5)ChainCode的编写步骤