node.js-day01

node.js

一. 创建http服务

//1. 引入http模块
let http=require('http');

//2. 创建http服务
let server=http.createServer((req,res)=>{
    console.log('服务器创建成功测试');
    
    //*响应完成
    res.end();
})
//3. 设置监听端口
server.listen(8090);
**关于node.js的启动与访问
1. 如何启动服务:
	在cmd窗口(搭建好http服务的js文件夹下) => node 文件名.js
	
2. 如何访问服务器:
	主机:端口号
	localhost:8090	域名
	127.0.0.1:8090	IP
	
注意: 如果修改了js文件中的代码(服务端代码),必须重新启动服务
		可以使用Ctrl+C => 终止服务 => 再重新启动服务

二. 关于创建http服务中的两个参数

let http=require('http');

//** 引入url模块
let urll=require('url');
let server=http.createServer((req,res)=>{
    //req: 请求报文,所有请求操作都使用req
    //res: 响应报文,所有响应操作都使用res
    
    //1. 获取请求方式
    let method=req.method;
    
    //2. 获取请求路径
    let url=req.url;
    
    //3. 获取请求参数(需要引入url模块)
    /*
    	url模块中有: parse(参数1,参数2)方法,可以获取参数
    		参数1: 请求路径
    		参数2: 布尔值 true=>对象格式 
    					false=>普通格式
    */
    let param=urll.parse(url,true);
    
    //可以单独获取对象中的参数 param中的query对象中存放了参数
    eg:	let id=param.query.id;
    	let gname=param.query.gname;
    
    res.end();
})
server.listen(8090);
**关于请求路径的理解(个人)
协议://主机:端口号/	=> /包括/以后的所有路径(包括参数)都是请求路径

**服务端响应给客户端的内容write()

let http=require('http');
let server=http.createServer((req,res)=>{
    //设置响应体: 服务端响应给客户端的内容
    res.write('<a>this is a link server</a>');
    res.end();
})
server.listen(9090);

三. 加载静态资源

**说明
*静态资源:html css js 图片 音频 视频等
*如何加载静态资源:
	引入fs模块 => (因为fs模块中有readFile()方法,可以读取要访问的静态资源)
	语法格式:
		fs.readFile('静态资源文件','回调函数')
			回调函数参数: 参数1 => 返回错误 err
						参数2 => 静态资源里面的数据 data
**代码如下
let http=require('http');

//1. 引入fs模块
let fs=require('fs');
let server=http.createServer((req,res)=>{
	let method=req.method;
    let url=req.url;
    
    //2. 执行readFile()方法前可以先判断文件路径和请求方式
    //判断是否是根目录
    if(url=='/'&&method=='GET'){
        fs.readFile('./index.html',(err,data)=>{
            if(err){
                res.write('<h1>404 not found</h1>');
            }else{
                res.write(data)
            }
            res.end()
        })
    }
    
    //判断是否是其他目录
    if(url=='/login'&&method=='GET'){
    	fs.readFile('./login.html',(err,data)=>{
        	if(err){
            	res.write('<h1>404 not found</h1>')
        	}else{
            	res.write(data)
        	}
        	res.end()
    	})
  	}
})
server.listen(9090);
posted @ 2022-07-15 21:34  又又儿  阅读(25)  评论(0)    收藏  举报