node005(node服务器,各种方法,重要的内容挺多)

在命令行使用nodemon app(就是js文件的名字).js 来激活运行本地服务器

//用于创建网站服务器的模块
const http=require('http'); //引入
const app= http.createServer(); //会有返回值,为服务器对象
//当客户端有请求时
app.on('request',(req,res)=>{
    console.log('ump45');//这样的方法还是有用的,
    //获取请求的地址
    console.log(req.url);   //请求的.地址
    //会返回2个,第一次是请求的/3154,第二次是/favicon.ico(浏览器自动生成的)
    //这是一种标识,可以按照这个为客户显示不同的内容!!!

    // console.log(req.headers);//获取headers的全部内容

    console.log(req.headers['accept']); //引号很是重要
    //上面获取了headers的accept的内容(写键的名字就好了)
    //不过由于是纯js文件会在命令行显示
    if(req.url=='/index'){//这样的写法保证了同一支路只有一个end方法,不会报错
        res.end('welcom to index my little buddy~');
    }else if(req.method=='POST'){
        console.log('也,这是一个POST请求');
        res.end('this is a post request');
    }else if(req.method=='GET'){
        console.log('也,这是一个GET请求');
        res.end('this is a get request');
    }
    //获取请求方式
    console.log(req.method);//看出了请求方式是Get
    //为啥刷新一下会出现2次ump45和req.method?
    //看看开发者network的请求发送,可以看出发送了2的请求
    //第二个是ico的请求,是浏览器自动发送的
    // res.end('<h2>hi how are U today?</h2>');
    //这个得注释掉,看来end只能在一条路线分支中同时存在一个
    //结束请求,响应内容
});//request(请求)req为缩写,res为(反应)的缩写
//监听端口后才可以提供服务,接下来就是
app.listen(3000);   //端口号
console.log('启动成功\nhttp://localhost:3000/');

html

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- 这几个属性是常用的->
    method:指定表单提交的方式(get or post)
    action:指定当前表单提交的地址 -->
    <form method="POST" action="http://localhost:3000/">
        <input type="submit">
    </form>
    点击以后会自动跳转到页面,
    并且在命令行出现app.on('request',(req,res)=>{}的相关函数运行的结果
    是ump45 POST ump45 GET
    看出了request分别执行了2边
    而POST的出现是因为我们在{}中有console.log(req.method);//看出了请求方式
    这样的函数
    GET的出现是因为跳转是一个GET请求
</body>

</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值