nodejs

Posted 这个名字怎么用不了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nodejs相关的知识,希望对你有一定的参考价值。

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。作用是将解析后的部分字符串数据转换成对象。

以上是关于nodejs的主要内容,如果未能解决你的问题,请参考以下文章

javascript 用于在节点#nodejs #javascript内设置react app的代码片段

NodeJs GraphQL 片段解析器

有没有办法在nodejs pdfkit中使一行中的文本片段变为粗体?

NodeJs异步的执行过程

通过nodejs 服务器读取HTML文件渲染到页面

NodeJS中的Websockets。从服务器端WebSocket客户端调用WebSocketServer