ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Node.js的http模块和url模块以及自启动工具supervisor

2021-05-06 16:58:05  阅读:165  来源: 互联网

标签:Node http url res 模块 服务器 自启动 supervisor


Node.js的http模块和url模块以及自启动工具supervisor

一、什么是Node.js

  • 简单的说 Node.js 就是运行在服务端的 JavaScript。

二、创建第一个应用

  • 第一步:引入 required 模块:require异步加载模块(nodejs的内置模块或者自定义模块)
  • 第二步:创建服务器:服务器可以监听客户端的请求。
  • 第三步:接收请求与响应请求,服务器很容易创建,客户端可以使用浏览器或终端发送 HTTP 请求,服务器接收请求后返回响应数据。

三、http模块

// 使用node创建一个本地服务器
// 需要一个nodejs的一个内置模块(http模块=>做服务端请求或者搭建服务器使用的)
// 第一步:require异步加载模块(nodejs的内置模块或者自定义模块)
const http=require('http');
// 第二步:创建服务(一般的服务有协议、主机名称、端口)
// 通过http这个协议对象去创建服务
// 服务器存在两个参数 request(请求参数) response(响应参数)
let app=http.createServer((req,res)=>{
   // 简单的响应
   // 设置服务端编码,200是服务端的响应状态码
   res.writeHead(200,{"Content-Type":"text/html;charset=utf-8"});
   // 给服务器端界面写值
   res.write("node服务器");
   // end()终止当前服务
   res.end();
});
// 监听端口listen()
app.listen('8080','localhost',()=>{
   // 服务端口监听成功,回调匿名函数
   console.log("http:localhost:8080");
})

四、url模块

const http=require('http');
// 引入路径解析模块
const url=require("url");
// get路径传值的服务端针对get传值进行路径解析
// eg:http://127.0.0.1/?id=10086&name=zjm
let app=http.createServer((req,res)=>{
   //req请求头,里面有url(请求路径),method(请求方式)
   console.log(req);
   //true解析成json数据格式
   let path=url.parse(req.url,true).query;
   console.log(path);//{ id: '10086', name: 'zjm' }
   res.writeHead(200,{"Content-Type":"text/html;charset=utf-8"});
   res.write("url路径解析");
   res.end();
});
app.listen('80','127.0.0.1',()=>{
   console.log("http:127.0.0.1:80");
})

五、自启动工具supervisor

  • 在nodejs中文件修改需要重启服务:这要开发比较慢,安装自启动工具supervisor
  • 安装命令:cnpm install –g supervisor
  • 安装完成之后启动文件使用 supervisor ****.js
  • 启动服务之后修改代码会自动启动服务.

标签:Node,http,url,res,模块,服务器,自启动,supervisor
来源: https://blog.csdn.net/qq_45806781/article/details/116455656

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有