前后端通信&HTTP

前端(浏览器)和后端(服务器)数据交互的过程;
客户端:相对于服务器,能和服务器通信的都叫客户端,例如:浏览器、命令行工具
命令行 curl https://www.imooc.com/

过程

浏览器主动向服务器发送请求,服务器对浏览器做出响应
后向前,例如刷新网页,后端就会发送
前向后,例如注册页面

方式

浏览器访问网页

浏览器地址栏输入网页,按回车

HTMl标签

1)浏览器解析HTMl标签时,遇到特殊标签,会再次向服务器发送请求;
特殊标签:link/img/script/iframe
JSONP跨域原理:遇到script标签会再次向服务器发送请求;
2)另有部分标签,解析时不会向服务器发送请求,用户可使用他们向服务器发送请求,例如a/form
同一个域名下,可最多发送6个请求
提高效率,例如:并发多个域名的请求,精灵图

Ajax&Fetch

HTTP-超文本传输协议

HTTP :HyperText Transfer Protocol
HTML: HyperText Markup Language
超文本:单一文本通过超链接联系起来,变成可无限延申、扩展的超级文本、立体文本

作用

通过HTTP,HTML、CSS、JS、图片、字体、音视频等在服务器和浏览器间传输

过程

在这里插入图片描述

输入网址查询IP,和服务器建立TCP链接;
若IP已被访问过,浏览器会存储,在浏览器IP就能查询到;
若IP未被访问过,则在DNS(域名解析服务器)中查询,速度慢

缓存分类:
内存缓存&硬盘缓存

报文

请求报文:浏览器向服务器发送请求,请求时传输的信息,叫~
响应报文:服务器向浏览器发送响应,响应时传输的信息,叫~

格式

在这里插入图片描述

长链接&短链接
用户代理

方法

增删改查

GET 、POST、DELETE、PUT使用时语义合理更好,但不强制

getpost
有无请求体
携带数据方式请求头请求头、请求体
能携带的数据量与地址长度有关最多几K无限(理论上)
是否可缓存可缓存,因地址会被缓存不会缓存
安全性网址可见控制台里可见

发送密码等敏感信息时不要使用GET,避免直接窥屏或通过历史记录查到密码

RESTful

属于后端
一种接口设计方式-充分利用HTTP的4种方法语义

未按照RESTful接口设计

1)通过ID获取个人信息-GET方法
https://www.imooc.com/api/http/getUser?id=1
2) 注册新用户-POST方法
https://www.imooc.com/api/http/addUser
3)修改用户-POST方法
https://www.imooc.com/api/http/modifyUser
4) 删除用户-POST方法
https://www.imooc.com/api/http/deleteUser

按照RESTful接口设计后

1)通过ID获取个人信息-GET方法
https://www.imooc.com/api/http/user?id=1
2) 注册新用户-POST方法
https://www.imooc.com/api/http/user
3)修改用户-PUT方法
https://www.imooc.com/api/http/user
4) 删除用户-DELETE方法
https://www.imooc.com/api/http/user

HTTP Status Code

表明服务器对请求的处理结果

状态码结果
100~199请求被接受,继续处理(websocket)
200~299成功
300~399重定向
400~499请求错误
500~599服务器错误

301 Moved Permanently
永久性缓存在用户本地
慎用万一定向需要改变,无法清空用户的缓存
302 Moved Temporarily
304 Not Modified,文件没有过期,能用

404 Not Found
500 Internal Server Error

重定向情况:协议从http升级到https
用http://www.imooc.com访问,会跳到https://www.imooc.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Socket前后端通信是一种基于网络的通信方式,用于实现客户端和服务器之间的数据传输和交互。通常情况下,前端和后端分别位于不同的计算机上,通过Socket连接,可以实现数据的传输和通信。 在Socket前后端通信,前端通常是指客户端,使用浏览器或移动应用程序等来发送请求和接收响应。后端通常是指服务器,负责接收前端的请求,处理逻辑,然后将响应返回给前端。 通信的过程大致如下: 1. 前端向后端发起连接请求,通过指定服务器的IP地址和端口号来建立Socket连接。 2. 后端监听指定端口,接收前端的连接请求,并建立与前端的Socket连接。 3. 前端通过Socket连接发送请求数据到后端。请求数据可以是表单数据、JSON数据等。 4. 后端接收到请求数据后,进行相应的处理,可以是处理业务逻辑、查询数据库等。 5. 后端处理完请求后,将响应数据打包成数据包发送到前端。 6. 前端通过Socket连接接收到后端返回的响应数据,并进行相应的解析和处理。 7. 前端根据需要,可以继续发送请求或关闭Socket连接。 Socket通信可以实现实时的数据传输和双向通信。通过使用Socket,前后端可以实现实时聊天、实时更新数据等功能。同时,Socket通信也可以进行数据加密和身份验证,提高通信的安全性。 总结来说,Socket前后端通信是一种基于网络的双向通信方式,通过建立Socket连接,前后端可以进行数据传输和交互。这种通信方式具有实时性和灵活性,广泛应用于Web开发和移动应用开发等领域。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值