学点HTTP知识
不学无术
又一次感觉到不学无术,被人一问Http知识尽然一点也没答上来,丢人丢到家了啊。平时也看许多的技术文章,为什么到了关键时刻就答不上来呢?
确实发现一个问题,光看是没有用的,需要实践。看别人说的头头是道自己也觉得理解了,但发现再让自己复述一遍可能完全就答不上来。这就是因为看别人的文章更像看小说,脑子里跟着作者的思路感觉好像挺懂的,其实也就是过眼云烟。所以想要学好技术
- 一方面是要看别人的总结,比如文章、书、源代码
- 然后就是要自己去总结,比如写写博客,跑跑书里面的代码,这样可以加深理解。
- 最后就是要去用,特别是在工作中。如果一项技能已经用的非常熟练了想要忘都难。
为了让自己对HTTP知识多一点印象,写一篇博客吧。由浅入深,慢慢来。
先简单认识http
HTTP是超文本传输协议,这个协议是应用层协议。我的理解是在服务器生成一段文本,在网络上传输,客户端可以对其解析成视图并提供交互。
http是由请求与响应构成,在设计时是无状态协议,这样每一次的操作基本就是客户端发起请求,服务端返回响应。
Http请求与响应都包含:请求行、消息头和消息体。
常见的Header
说起header不复杂,但细细一看蛮多学问在里面,只不过确实有点多,主要是还是先关注一些常见的吧。
通用头域
- Cache-Control:指定请求和响应遵循的缓存机制
- Connection:keep-alive:保持与服务器的TCP连接
- Date:消息发送的日期时间
- Pragma:用来包含实现特定的指令,最常用的是Pragma:no-cache。在HTTP/1.1协议中,它的含义和Cache-Control:no-cache相同。
- Transfer-Encoding:chunked:分块编码
Request Header
- Request URL:请求的URL
- Request Method:请求的方法(OPTIONS、HEAD、GET、POST、PUT、DELETE、TRACE、CONNECT、PATCH)
- Remote Address:远程服务器的地址
- Accept:指定客户端接收的MIME类型(text/html,application/xhtml+xml,application/xml)
- Accept-Encoding:指定客户端接收的编码,通常用于指定压缩算法(gzip, deflate, sdch)
- Accept-Language:指定客户端接收的语言(zh-CN,zh)
- Accept-Charset:指定客户端接收的字符集(gb2312,uft-8)
- Cookie:客户端cookie信息
- Host:请求的域
- User-Agent:发起请求的用户信息,操作系统、浏览器版本等
- If-Modified-Since:服务器上一次修改的时间
response header
- Content-Encoding:响应包的编码及压缩算法(gzip)
- Content-Type:响应包的资源类型(text/html; charset=utf-8)
- Expires:过期时间
- Last-Modified:最后修改时间
常见的状态码
- 200:请求已成功
- 201:请求已经被实现,而且有一个新的资源已经依据请求的需要而建立,且其 URI 已经随Location 头信息返回
- 301/302:重定向
- 304:客户端请求的资源未修改
- 400:错误的请求包
- 404:请求失败,指定资源未找到
- 500:服务器内部错误,通常是服务器出错了没法返回响应包

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

本文讨论了HTML< Progress>元素,其目的,样式和与< meter>元素。主要重点是使用< progress>为了完成任务和LT;仪表>对于stati

本文讨论了html< datalist>元素,通过提供自动完整建议,改善用户体验并减少错误来增强表格。Character计数:159

本文讨论了HTML< meter>元素,用于在一个范围内显示标量或分数值及其在Web开发中的常见应用。它区分了< meter>从< progress>和前

本文讨论了视口元标签,这对于移动设备上的响应式Web设计至关重要。它解释了如何正确使用确保最佳的内容缩放和用户交互,而滥用可能会导致设计和可访问性问题。

本文讨论了< iframe>将外部内容嵌入网页,其常见用途,安全风险以及诸如对象标签和API等替代方案的目的。

HTML适合初学者学习,因为它简单易学且能快速看到成果。1)HTML的学习曲线平缓,易于上手。2)只需掌握基本标签即可开始创建网页。3)灵活性高,可与CSS和JavaScript结合使用。4)丰富的学习资源和现代工具支持学习过程。

HTML定义网页结构,CSS负责样式和布局,JavaScript赋予动态交互。三者在网页开发中各司其职,共同构建丰富多彩的网站。

AnexampleOfAstartingTaginHtmlis,beginSaparagraph.startingTagSareEssentialInhtmlastheyInitiateEllements,defiteTheeTheErtypes,andarecrucialforsstructuringwebpages wepages webpages andConstructingthedom。
