根据不同的url响应不同的html内容

2022-12-04  本文已影响0人  壹贰是只猫

前沿:上一章节我们学习了如何创建一个最基本的服务器,这一章节,我们继续沿用前一章节的知识点,进行拓展训练,教大家如何根据不同的url响应不同的html内容,大家可以先思考一下,在看我接下来的步骤。

一、核心实现步骤

① 获取请求的url地址
② 设置默认的响应内容为404 Not found
③ 判断用户请求的是否为//index.html首页
④ 判断用户请求的是否为/about.html关于页面
⑤ 设置Content-Type响应头,防止中文乱码
⑥ 使用res.end()把内容响应给客户端

二、动态响应内容
server.on('request',function(req,res){
    const  url = req.url                      //1.回去请求的url地址
    let content = `<h1>404 Not found!</h1>`   //2、设置默认的响应内容为404 Not found
    if(url === '/' || url === '/index.html'){ //3、用户请求的是首页
        content = '<h1>首页</h1>'
       }else if(url === '/about.html'){
        content = '<h1>关于页面</h1>'          //4.用户请求的是关于页面
   }
      res.setHeader('Content-Type','text/html;charset=utf-8')  //5.设置Content-Type响应头,防止中文乱码
      res.end(content)    //6.把内容发送给客户端
})

运行代码,会展示首页两个字,其次将地址改为http://127.0.0.1/index.html也会展示首页,说明/index.html都会展示首页

/和index.html

我们在将url改为http://127.0.0.1/about.html,得到关于页面这几个字

about.html

当我们输入除这三个地址以外的url,都会出现404 Not found

error.html(随便输入,只要不是上面三个地址)

我们会发现,根据url的不同,我们会获得不一样的结果

分析:因为我们一开始默认给的404 Not found,然后再去判断的url获取的结果,再根据url的不同再去赋值,所以我们只需要输入不同于if 和if else里面的路径,就会获得404的页面,反之,我们输入if里面的判断,我们就会获得相应的结果。

结尾

文章的最后,希望大家多多练习,虽然简单,但也不要不去手动写一遍,我们下一章节再见,推荐歌曲《医生》

上一篇 下一篇

猜你喜欢

热点阅读