nodeJs的学习之路(1)

一 什么是nodeJs

nodeJs是一个后端技术,研究web应用的开发模式,能够开发一些简单的服务器,学会操作数据库等等。官方解释就是:nodeJs是基于谷歌v8引擎的javascript运行环境

nodeJs使用了一个事件驱动,非非阻塞式I/O模型,使其轻量又高效

二 npm是什么

npm是Node的一个小兄弟,叫做node的包管理器,会在安装node的时候一起安装,成为世界上最大的开放源代码的生态系统

三 使用node

首先全局安装node,安装好之后就可以使用node 了,node有很多内置的模块,可以提供给我们使用。下面来介绍node的一些内置模块

四 node的内置模块

1.http模块:下面总结这个模块可以使用的功能

(1)创建服务:

const server = http.createServer((req,res){

  console.log(req.url)//此次请求的地址

  console.log(req.method)//此次请求的方法

  console.log(req.headers)//请求头信息

  res.write()//这是输出到前端的,响应的内容

  res.end()//这个也是响应的内容,也可以输出内容给前端,但是end之后不能再有write了

})

server.listen(port,host()=>{

  console.log("监听中...")

})

2.url模块

(1)解析url地址,从里面提取出很多有用的东西供我们使用

const url = require("url")

url包括协议 域名 端口 pathname querystring hash

协议就是http https 等 

域名就是对用的Ip地址,因为域名更好记住,需要用DNS解析一下,把域名解析成IP地址

let obj = url.parse(url地址)====》  url{

                  protocol:'http:',

                  host:'localhost:8080'

                  port:'8080'

                  hostname:'localhost',

                  hash:'#abc'

                  search:'?a=1&b=2',

                  query:'a=1&b=2'

                }

当你给parse传参的时候,除了传url地址之外还要多传两个参数,第一个是true指的是,自动将query解析成为对象,第二个参数传的还是true,,这个意思是提前告诉url说:这个路径没有协议,能不能帮我解析一下,如果不传这个参数,只要保证你的路径有协议就行,如果你的路径没有协议,url是不会帮你解析的。

原文地址:https://www.cnblogs.com/zh-helloworld/p/7954787.html