web服务器

2021-03-24  本文已影响0人  beizi

 服务器相关概念

服务器与客户端

        提供网络服务的一台机器,通过在自己的电脑上安装特殊的软件(或者是运行某段特殊的代码)来提供服务。

服务器 = 电脑 + 能给其它电脑提供服务的软件

        客户端与服务器:提供服务的是服务器,享受服务的是客户端

服务器的类型

    web服务器:图片浏览,新闻浏览....等服务的服务器

    ftp服务器:为其它电脑提供文件下载,共享服务

    数据库服务器:为其它电脑提供数据库服务

ip地址

    标识一个网络设备(计算机、手机、电视)在某一个具体的网络当中的地址。要访问某个电脑上的资源,先要找到它的ip。

      在同一个网络中,计算机的IP是不允许相同的,都是唯一的

    127.0.0.1 特指本机ip地址

域名

    它是ip地址的别名

    localhost这个域名特指127.0.0.1

端口

    一个IP地址的端口可以有65536个,范围是从[0,65535])。不同的端口被不同的软件占用,以提供不同的服务

如果IP地址是一个商场,那么端口就是里面每个店铺的店号

http协议

    约定浏览器与web服务器之间的之间通信规则

    浏览器 请求 资源 要遵守 http 协议

请求报文(请求行,请求头,请求体)

    服务器 返回 资源 要遵守 http 协议

响应报文(响应行,响应头,响应体)

用http 模块写一个简单的web服务器

// 引入http模板

const http = require('http');

// 2. 创建服务const server = http.createServer(function(req, res) { 

// 回调;每一次都会执行一次

// 向客户端发送内容,并结束本次响应 res.end('hello world');

});

// 3. 启动服务

server.listen(端口号, ()=>{ // 启动成功 } )

理解请求和响应

`ab=1`

```

console.log()

```

    每一次请求都会执行回调

    res.end()两个作用:  

结束请求

 设置响应体

    res.end() 两种参数类型:

string

Buffer

url

    统一资源定位器

作用:

    帮助我们找到这个资源(.html, .css, .js ,....接口..)

格式:

    协议://域名(ip地址)[端口]/路径?查询字符串#锚点

content-type

    告诉对方(可能是浏览器,也可能是服务器),本次传输的数据是什么类型

    通过使用res对象中的setHeader方法,设置content-type这个响应头

    格式:

res.setHeader('content-type', 'xxxxxxx')

状态码

    http协议约定的编码

     常见有:200、301、400、401、404、500   

处理.html文件中的二次请求

    如果一个html文件中,再次引用其它的外部资源,则它会再发请求

统一处理静态资源

思路

    收到请求后,在指定的文件夹下读资源

        读到      —>  返回

        读不到   —> 返回404

    try catch

    设置content-type    //  策略模式

理解静态资源与接口的区别

    静态资源

    index.html, style.css, index.js, mp4, .png

    处理静态资源:读出这个资源,再返回

动态资源:接口

服务器上的一段代码

      处理接口:执行这一段代码,把结果返回

发送请求的途径

  *  直接在地址栏中写url

  *  a标签跳转

  *   表单提交

  *   ajax请求

发送请求的类型

get  post  put  patch  ...

上一篇 下一篇

猜你喜欢

热点阅读