Http概念、历史进程及请求与响应

简介: 4、Http 4.1、什么是HTTP HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。 文本:html,字符串,~... 超文本:图片,音乐,视频,定位,地图...... 80 Https:安全的 443 4.2、两个时代 http1.0 HTTP/1.0:客户端可以与

4、Http


4.1、什么是HTTP


HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。


  • 文本:html,字符串,~...
  • 超文本:图片,音乐,视频,定位,地图......
  • 80


Https:安全的

  • 443


4.2、两个时代


  • http1.0
  • HTTP/1.0:客户端可以与web服务器连接,只能获得一个web资源,断开连接


  • http2.0
  • HTTP/1.1:客户端可以与web服务器连接后,可以获得多个web资源。


4.3、Http请求


  • 客户端---发请求(Request)---服务器


百度:

Request URL:https://www.baidu.com/  请求地址
Request Method:GET  get方法/post方法
Status Code:200 ok  状态码:200
Remote(远程) Address:14.215.177.39:443
Referrer Policy:no-referrer-when-downgrade


Accept:text/html
Accept-Encoding:gzip, deflate, br
Accept-Language:zh-CN,zh;q=0.8    语言
Cache-Control:max-age=0
Connection:keep-alive


1、请求行


  • 请求行中的请求方式:GET


  • 请求方式:Get,Post,HEAD,DELETE,PUT,TRACT...
  • get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但是高效
  • post:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但是不高效


2、消息头


Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:支持哪种编码格式  GBK UTF-8 GB2312  ISO8859-1
Accept-Language:告诉浏览器,它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成时是断开还是保持连接
HOST:主机.../


4.4、Http响应


  • 服务器---响应---客户端


百度:


Cache-Control:private   缓存控制
Connection keep-alive   连接
Content-Encoding gzip   编码
Content-Type text/html;   类型


1.响应体


Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:支持哪种编码格式  GBK UTF-8 GB2312  ISO8859-1
Accept-Language:告诉浏览器,它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成时是断开还是保持连接
HOST:主机.../
Refresh:告诉客户端,多久刷新一次
Location:让网页重新定位;


2.响应状态码


200:请求响应成功


3xx:请求重定向

  • 重定向:你重新到我给你的新位置去;


4xx:找不到资源 404

  • 资源不存在;


5xx:服务器代码错误 500 502:网关错误


常见面试题:

当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够显示回来,经历了什么?

相关文章
|
JSON 监控 API
掌握使用 requests 库发送各种 HTTP 请求和处理 API 响应
本课程全面讲解了使用 Python 的 requests 库进行 API 请求与响应处理,内容涵盖环境搭建、GET 与 POST 请求、参数传递、错误处理、请求头设置及实战项目开发。通过实例教学,学员可掌握基础到高级技巧,并完成天气查询应用等实际项目,适合初学者快速上手网络编程与 API 调用。
1155 130
HTTP协议中请求方式GET 与 POST 什么区别 ?
GET和POST的主要区别在于参数传递方式、安全性和应用场景。GET通过URL传递参数,长度受限且安全性较低,适合获取数据;而POST通过请求体传递参数,安全性更高,适合提交数据。
942 2
|
Go 定位技术
Golang中设置HTTP请求代理的策略
在实际应用中,可能还需要处理代理服务器的连接稳定性、响应时间、以及错误处理等。因此,建议在使用代理时增加适当的错误重试机制,以确保网络请求的健壮性。此外,由于网络编程涉及的细节较多,彻底测试以确认代理配置符合预期的行为也是十分重要的。
486 8
|
JSON JavaScript API
Python模拟HTTP请求实现APP自动签到
Python模拟HTTP请求实现APP自动签到
|
数据采集 JSON Go
Go语言实战案例:实现HTTP客户端请求并解析响应
本文是 Go 网络与并发实战系列的第 2 篇,详细介绍如何使用 Go 构建 HTTP 客户端,涵盖请求发送、响应解析、错误处理、Header 与 Body 提取等流程,并通过实战代码演示如何并发请求多个 URL,适合希望掌握 Go 网络编程基础的开发者。
|
缓存 JavaScript 前端开发
Vue 3 HTTP请求封装导致响应结果无法在浏览器中获取,尽管实际请求已成功。
通过逐项检查和调试,最终可以定位问题所在,修复后便能正常在浏览器中获取响应结果。
473 0
|
Go
如何在Go语言的HTTP请求中设置使用代理服务器
当使用特定的代理时,在某些情况下可能需要认证信息,认证信息可以在代理URL中提供,格式通常是:
790 0
|
Linux 数据库 Perl
【YashanDB 知识库】如何避免 yasdb 进程被 Linux OOM Killer 杀掉
本文来自YashanDB官网,探讨Linux系统中OOM Killer对数据库服务器的影响及解决方法。当内存接近耗尽时,OOM Killer会杀死占用最多内存的进程,这可能导致数据库主进程被误杀。为避免此问题,可采取两种方法:一是在OS层面关闭OOM Killer,通过修改`/etc/sysctl.conf`文件并重启生效;二是豁免数据库进程,由数据库实例用户借助`sudo`权限调整`oom_score_adj`值。这些措施有助于保护数据库进程免受系统内存管理机制的影响。
|
Linux Shell
Linux 进程前台后台切换与作业控制
进程前台/后台切换及作业控制简介: 在 Shell 中,启动的程序默认为前台进程,会占用终端直到执行完毕。例如,执行 `./shella.sh` 时,终端会被占用。为避免不便,可将命令放到后台运行,如 `./shella.sh &`,此时终端命令行立即返回,可继续输入其他命令。 常用作业控制命令: - `fg %1`:将后台作业切换到前台。 - `Ctrl + Z`:暂停前台作业并放到后台。 - `bg %1`:让暂停的后台作业继续执行。 - `kill %1`:终止后台作业。 优先级调整:
1758 5
|
运维 关系型数据库 MySQL
掌握taskset:优化你的Linux进程,提升系统性能
在多核处理器成为现代计算标准的今天,运维人员和性能调优人员面临着如何有效利用这些处理能力的挑战。优化进程运行的位置不仅可以提高性能,还能更好地管理和分配系统资源。 其中,taskset命令是一个强大的工具,它允许管理员将进程绑定到特定的CPU核心,减少上下文切换的开销,从而提升整体效率。
掌握taskset:优化你的Linux进程,提升系统性能

热门文章

最新文章