Http(Hypertext Transfer Protocol)
HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传输协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。
用于http协议交互的信息被称为http报文。请求端(客户端)的http报文叫做请求报文,响应端(服务器)的叫做响应报文。
请求报文由请求方法,请求URI,协议版本,首部字段(可选),内容实体(可选)构成
响应报文由协议版本,状态码,原因短语,首部字段(可选),实体主体构成
在每份报文中,请求URI,协议版本,状态码,原因短语,首部字段属于报文首部,然后空一行,剩下的是报文主体。
首部字段有4种:请求首部字段,响应首部字段,通用首部字段,实体首部字段,通用首部和实体首部为请求报文和响应报文都有的,而请求首部只有请求报文有,响应首部只有响应报文有。
报文是http通信中的基本单位,由8位组字节流组成,通过http通信传输。
实体作为请求和响应的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成
一般情况下,报文主体等于实体主体。只有当传输中进行编码操作时,实体主体的内容发生变化,才会和报文主体不一致。
http1.0和http1.1支持的方法
方法 |
说明 |
支持http协议的版本 |
GET |
获取已被URI识别的资源 |
1.0,1.1 |
POST |
传输实体主体 |
1.0,1.1 |
PUT |
传输文件(不带验证机制) |
1.0,1.1 |
获得报文首部 |
1.0,1.1 |
|
删除文件(不带验证机制) |
1.0,1.1 |
|
OPTIONS |
询问支持方法 |
1.1 |
TRACE |
追踪路径 |
1.1 |
CONNECT |
要求用隧道协议链接代理 |
1.1 |
LINK |
建立和资源之间的联系 |
1.0 |
UNLINK |
断开链接关系 |
1.0 |
http状态码
状态码 |
类别 |
原因短语 |
1XX |
Informational(信息性状态码) |
接收的请求正在处理 |
2XX |
Success(成功状态码) |
请求正常处理完毕 |
3XX |
Redirection(重定向状态码) |
需要进行附加操作以完成请求 |
4XX |
Client Error(客户端错误状态码) |
服务器无法处理请求 |
5XX |
Server Error(服务器错误状态码) |
服务器处理请求出错 |
14中常用的状态码
200 OK |
表示客户端发来的请求在服务器端被正常处理了 |
204 No Content |
表示服务器接收的请求已处理成功,但返回的响应报文不含实体主体部分 |
206 Partial Content |
表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求 |
301 Moved Permaently |
永久性重定向,表示请求的资源已被分配了新的URI,以后应使用该资源现在所指的URI |
302 Found |
临时性重定向,表示请求的资源已被分配了新的URI,希望用户本次能使用新的URI访问 |
303 See Other |
表示由于请求对应的资源存在着另一个URI,应使用GET方法定向获取请求的资源 |
304 Not Modified |
表示客户端发送附带条件请求时,服务器端允许请求访问资源,但因发生请求为满足条件的情况后,直接返回304 Not Modified(服务器端资源为改变,可直接使用客户端未过期的主体部分) |
307 Temporary Redirect |
临时重定向,和302含义相同 |
400 Bad Request |
表示请求报文中存在语法错误。服务器端无法识别请求 |
401 Unauthorized |
表示发送的请求需要通过http认证的认证信息。若之前已进行过一次请求,则表示用户认证失败 |
403 Forbidden |
表示请求资源的访问被服务器拒绝了。没有权限访问 |
404 Not Found |
表示服务器无法找到请求的资源,即没有这个资源 |
500 Internal Server Error |
表示服务器端在执行请求时发生了错误,也有可能是web应用存在bug或某些临时性故障 |
503 Service Unavailable |
表示服务器暂时处于超负载或正在进行停机维护,现在无法处理请求 |
http通用首部字段
通用首部字段名 |
说明 |
Cache-Control |
|
Connection |
管理逐跳首部和持久连接 |
创建报文的日期时间 |
|
Pragma |
报文指令 |
Trailer |
报文末端的首部一览 |
Transfer-Encoding |
指定报文主体的传输编码方式 |
Upgrade |
升级为其他协议,检测是否可使用更高版本协议通信 |
Via |
代理服务器的相关信息,追踪客户端和服务器之间的请求和响应报文的传输路径 |
Warning |
错误通知,通常会告知用户一些与缓存相关的问题的警告 |
http1.1 警告码(Warning共七种)
警告码 |
警告内容 |
说明 |
110 |
Response is stale(响应已过期) |
代理返回已过期的资源 |
111 |
Revalidation failed(再验证失败) |
代理无法验证资源有效性时失败(服务器无法到达等原因) |
112 |
Disconnection operation(断开链接操作) |
代理与互联网链接被故意切断 |
113 |
Heuristic expiration(试探性过期) |
响应的使用期超过24小时(有效缓存的设定时间大于24小时的情况下) |
199 |
Miscellaneous warning(杂项警告) |
任意警告的内容 |
214 |
Tansformation applied(使用了转换) |
代理对内容编码或媒体类型等执行了某些处理时 |
299 |
Miscellaneous persistent warning(持久杂项警告) |
任意的警告内容 |
http请求首部字段
请求首部字段 |
说明 |
Accept |
用户代理可处理的媒体类型及媒体类型的相对优先级 |
Accept-Charset |
优先的字符集,用户代理支持的字符集及相对优先顺序 |
Accept-Encoding |
优先的内容编码,用户代理支持的内容编码及优先级顺序 |
Accept-Language |
优先的语言,用户代理能处理的自然语言及自然语言集的相对优先级 |
Authorization |
Web认证信息 |
Expect |
期待服务器的特定行为 |
From |
用户的电子邮件地址 |
Host |
请求资源所在的服务器(主机名和端口号) |
If-Match |
和实体标记(ETag)比较,若相同则执行请求,否则返回412状态码 |
If-Modefied-Since |
若If-Modefied-Since字段值早于资源的更新时间,则希望处理该请求,否则返回304状态码 |
If-None-Match |
比较实体标记(与If-Match想反) |
If-Range |
资源未更新时发送实体Byte的范围请求。若If-Range字段值和请求资源的ETag值或时间相一致时,则作为范围请求处理,否则返回全体资源 |
If-Unmodified-Since |
比较资源的更新时间(与If-Modified-Since想反) |
Max-Forwards |
最大传输逐跳数(以十进制形式指定可经过的服务器的最大数目) |
Proxy-Authorization |
代理服务器要求客户端的认证信息 |
Range |
实体的字节范围请求 |
Referer |
对请求中URI的原始获取方(请求的原始资源的URI) |
TE |
告知服务器客户端能处理响应的传输编码方式及相对优先级 |
User-Agent |
http客户端程序的信息 |
http响应首部字段
响应首部字段 |
说明 |
Accept-Ranges |
是否接受字节范围请求 |
Age |
资源创建经过的时间,单位为秒 |
ETag |
资源的匹配信息,能告知客户端实体标识 |
Location |
令客户端重定向至指定URI |
Proxy-Authenticate |
代理服务器对客户端的认证信息 |
Retry-After |
对再次发起请求的时机要求 |
Server |
http服务器的安装信息 |
Vary |
代理服务器缓存的管理信息 |
WWW-Authenicate |
服务器对客户端的认证信息 |
http实体首部字段
实体首部字段 |
说明 |
Allow |
资源可支持的http方法 |
Content-Encoding |
实体适用的编码方式 |
Content-Language |
实体的自然语言 |
Content-Length |
实体的大小(单位为字节) |
Content-Location |
替代对应资源的URI |
Content-MD5 |
实体主体的报文摘要 |
Content-Range |
实体主体的位置范围 |
Content-Type |
实体主体的媒体类型 |
Expires |
实体主体过期的日期时间 |
Last-Modified |
资源最后修改的日期时间 |
Atas ialah kandungan terperinci http的方法,状态码和组成部分 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Piawaian dan teknologi web telah berkembang dari HTML4, CSS2 dan JavaScript mudah setakat ini dan telah menjalani perkembangan yang ketara. 1) HTML5 memperkenalkan API seperti kanvas dan webstorage, yang meningkatkan kerumitan dan interaktiviti aplikasi web. 2) CSS3 menambah fungsi animasi dan peralihan untuk menjadikan halaman lebih berkesan. 3) JavaScript meningkatkan kecekapan pembangunan dan kebolehbacaan kod melalui sintaks moden node.js dan ES6, seperti fungsi anak panah dan kelas. Perubahan ini telah mempromosikan pembangunan pengoptimuman prestasi dan amalan terbaik aplikasi web.

H5 bukan sekadar singkatan HTML5, ia mewakili ekosistem teknologi pembangunan web moden yang lebih luas: 1. H5 termasuk HTML5, CSS3, JavaScript dan API dan Teknologi yang berkaitan; 2. Ia menyediakan pengalaman pengguna yang lebih kaya, interaktif dan lancar, dan boleh berjalan dengan lancar pada pelbagai peranti; 3. Menggunakan timbunan teknologi H5, anda boleh membuat laman web responsif dan fungsi interaktif yang kompleks.

H5 dan HTML5 merujuk kepada perkara yang sama, iaitu HTML5. HTML5 adalah versi kelima HTML, membawa ciri -ciri baru seperti tag semantik, sokongan multimedia, kanvas dan grafik, penyimpanan luar talian dan penyimpanan tempatan, meningkatkan ekspresi dan interaktiviti laman web.

H5referstohtml5, apivotaltechnologyinwebdevelopment.1) html5introducesnewelementsandapisforrich, dynamicwebapplications.2) itsupp ortsmultimediawithoutplugins, enhancusexperienceaceacrossdevices.3) SemantikelementsImproveContentstructureandseo.4) H5'srespo

Alat dan kerangka yang perlu dikuasai dalam pembangunan H5 termasuk Vue.js, React dan Webpack. 1.vue.js sesuai untuk membina antara muka pengguna dan menyokong pembangunan komponen. 2. Leact mengoptimumkan rendering halaman melalui DOM maya, sesuai untuk aplikasi yang kompleks. 3.WebPack digunakan untuk pembungkusan modul dan mengoptimumkan beban sumber.

Html5hassignificlylylectransformedwebdevelopmentbyintroducingsemanticelements, enhancingmultimediasupport, andimprovingperformance.1) itmadewebebsitesmoreaccessibleandseo-friendlywithSemhyViVeShive, dan

H5 meningkatkan kebolehaksesan laman web dan kesan SEO melalui unsur -unsur semantik dan atribut ARIA. 1. Gunakan, dan lain -lain untuk mengatur struktur kandungan dan meningkatkan SEO. 2. Atribut Aria seperti ARIA-Label meningkatkan kebolehcapaian, dan pengguna teknologi bantuan boleh menggunakan laman web dengan lancar.

"H5" dan "HTML5" adalah sama dalam kebanyakan kes, tetapi mereka mungkin mempunyai makna yang berbeza dalam senario tertentu tertentu. 1. "HTML5" adalah standard yang ditentukan oleh W3C yang mengandungi tag dan API baru. 2. "H5" biasanya merupakan singkatan HTML5, tetapi dalam pembangunan mudah alih, ia boleh merujuk kepada rangka kerja berdasarkan HTML5. Memahami perbezaan ini membantu menggunakan istilah ini dengan tepat dalam projek anda.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver CS6
Alat pembangunan web visual

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna