cari
Rumahhujung hadapan webhtml tutorial前端开发紧密相关的HTTP协议知识

前端开发紧密相关的HTTP协议知识

Apr 16, 2019 am 09:07 AM
httphujung hadapan

前端工程师打交道最多的就是浏览器,不管做什么都离不开浏览器,其中HTTP协议往往会被我们忽略,但其实资源缓存、CDN加载、页面性能优化等等都离不开对HTTP协议的了解。

HTTP也叫作超文本传输协议,全称:Hyper Transfer Protocol。最初HTTP只能传输HTML文件,慢慢的现在可以传输文字、图像、视频和各种流文件。

HTTP是无状态的:同一个客户端,连续发起多次请求,对HTTP服务器来说,都是新的请求,HTTP没办法知道来自一个客户端。

HTTP消息结构:要看具体消息结构需要用抓包工具,所以这边只有简单介绍,没有具体实例。Request和response的消息结构基本一样。

Header:分为request/response line和request/response header。

request/response line:包括请求的方法Method(GET/POST)、请求资源的路径path to resource和http协议的版本号。

request/response header:这边就是各种请求头了。

Body:响应体,一般是HTML文件。如果是get请求,是没有响应体的。

HTTP请求方法:

GET    请求获取Request-URI所标识的资源
POST    在Request-URI所标识的资源后附加新的数据
HEAD    请求获取由Request-URI所标识的资源的响应消息报头
PUT      请求服务器存储一个资源,并用Request-URI作为其标识
DELETE  请求服务器删除Request-URI所标识的资源
TRACE   请求服务器回送收到的请求信息,主要用于测试或诊断
CONNECT 保留将来使用
OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求

对于我们来说,常用的就是GET、和POST。再次声明,不用表单提交,get不存在跟post比较有安全性问题。

HTTP状态码:

1XX  提示信息 - 表示请求已被成功接收,继续处理。

2XX  成功 - 表示请求已被成功接收,理解,接受

3XX  重定向 - 要完成请求必须进行更进一步的处理

4XX  客户端错误 -  请求有语法错误或请求无法实现

5XX  服务器端错误 -   服务器未能实现合法的请求

状态码很多,可以自行了解,我觉得有几个是必须知道的。

HTTP通信过程:根据URL查询DNS、查找服务器、建立TCP连接、发送请求、服务器响应。

对于HTTP,我觉得基础的要知道HTTP是无状态的、HTTP的消息结构、基本请求方法、基本状态码这四部分。

HTTP协议需要学习的还很多很多,这只是基本需要知道的。

欢迎关注Coding个人笔记 公众号

前端工程师打交道最多的就是浏览器,不管做什么都离不开浏览器,其中HTTP协议往往会被我们忽略,但其实资源缓存、CDN加载、页面性能优化等等都离不开对HTTP协议的了解。

HTTP也叫作超文本传输协议,全称:Hyper Transfer Protocol。最初HTTP只能传输HTML文件,慢慢的现在可以传输文字、图像、视频和各种流文件。

HTTP是无状态的:同一个客户端,连续发起多次请求,对HTTP服务器来说,都是新的请求,HTTP没办法知道来自一个客户端。

HTTP消息结构:要看具体消息结构需要用抓包工具,所以这边只有简单介绍,没有具体实例。Request和response的消息结构基本一样。

Header:分为request/response line和request/response header。

request/response line:包括请求的方法Method(GET/POST)、请求资源的路径path to resource和http协议的版本号。

request/response header:这边就是各种请求头了。

Body:响应体,一般是HTML文件。如果是get请求,是没有响应体的。

HTTP请求方法:

GET    请求获取Request-URI所标识的资源
POST    在Request-URI所标识的资源后附加新的数据
HEAD    请求获取由Request-URI所标识的资源的响应消息报头
PUT      请求服务器存储一个资源,并用Request-URI作为其标识
DELETE  请求服务器删除Request-URI所标识的资源
TRACE   请求服务器回送收到的请求信息,主要用于测试或诊断
CONNECT 保留将来使用
OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求

对于我们来说,常用的就是GET、和POST。再次声明,不用表单提交,get不存在跟post比较有安全性问题。

HTTP状态码:

1XX  提示信息 - 表示请求已被成功接收,继续处理。

2XX  成功 - 表示请求已被成功接收,理解,接受

3XX  重定向 - 要完成请求必须进行更进一步的处理

4XX  客户端错误 -  请求有语法错误或请求无法实现

5XX  服务器端错误 -   服务器未能实现合法的请求

状态码很多,可以自行了解,我觉得有几个是必须知道的。

HTTP通信过程:根据URL查询DNS、查找服务器、建立TCP连接、发送请求、服务器响应。

对于HTTP,我觉得基础的要知道HTTP是无状态的、HTTP的消息结构、基本请求方法、基本状态码这四部分。

HTTP协议需要学习的还很多很多,这只是基本需要知道的。

【推荐课程:HTTP视频课程

Atas ialah kandungan terperinci 前端开发紧密相关的HTTP协议知识. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:CSDN. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Mengapa tag HTML penting untuk pembangunan web?Mengapa tag HTML penting untuk pembangunan web?May 02, 2025 am 12:03 AM

Htmltagsareessentialforwebdevelopmentastastheystructureandhancewebpages.1) theDefinelayout, semantik, dan interactivity.

Terangkan kepentingan menggunakan gaya pengekodan yang konsisten untuk tag dan atribut HTML.Terangkan kepentingan menggunakan gaya pengekodan yang konsisten untuk tag dan atribut HTML.May 01, 2025 am 12:01 AM

Gaya pengekodan HTML yang konsisten adalah penting kerana ia meningkatkan kebolehbacaan, kemampuan dan kecekapan kod. 1) Gunakan tag dan atribut huruf kecil, 2) Pastikan lekukan yang konsisten, 3) Pilih dan tentukan sebut harga tunggal atau berganda, 4) Elakkan mencampurkan gaya yang berbeza dalam projek, 5) Gunakan alat automasi seperti Prettier atau Eslint untuk memastikan konsistensi dalam gaya.

Bagaimana untuk melaksanakan Carousel Multi-Project di Bootstrap 4?Bagaimana untuk melaksanakan Carousel Multi-Project di Bootstrap 4?Apr 30, 2025 pm 03:24 PM

Penyelesaian untuk melaksanakan Carousel Multi-Project dalam Bootstrap4 Melaksanakan Carousel Multi-Project di Bootstrap4 bukanlah tugas yang mudah. Walaupun bootstrap ...

Bagaimanakah laman web rasmi DeepSeek mencapai kesan menembusi acara tatal tetikus?Bagaimanakah laman web rasmi DeepSeek mencapai kesan menembusi acara tatal tetikus?Apr 30, 2025 pm 03:21 PM

Bagaimana untuk mencapai kesan penembusan peristiwa menatal tetikus? Apabila kami melayari web, kami sering menghadapi beberapa reka bentuk interaksi khas. Sebagai contoh, di laman web rasmi DeepSeek, � ...

Cara mengubahsuai gaya kawalan main balik video HTMLCara mengubahsuai gaya kawalan main balik video HTMLApr 30, 2025 pm 03:18 PM

Gaya kawalan main balik lalai video HTML tidak dapat diubahsuai secara langsung melalui CSS. 1. Buat kawalan tersuai menggunakan JavaScript. 2. Mencantikkan kawalan ini melalui CSS. 3. Pertimbangkan keserasian, pengalaman pengguna dan prestasi, menggunakan perpustakaan seperti video.js atau PLYR dapat memudahkan proses.

Masalah apa yang akan disebabkan oleh menggunakan Pilih asli di telefon anda?Masalah apa yang akan disebabkan oleh menggunakan Pilih asli di telefon anda?Apr 30, 2025 pm 03:15 PM

Masalah yang berpotensi dengan menggunakan pilihan asli pada telefon bimbit semasa membangunkan aplikasi mudah alih, kami sering memenuhi keperluan untuk memilih kotak. Biasanya, pemaju ...

Apakah kelemahan menggunakan pilihan asli di telefon anda?Apakah kelemahan menggunakan pilihan asli di telefon anda?Apr 30, 2025 pm 03:12 PM

Apakah kelemahan menggunakan pilihan asli di telefon anda? Apabila membangunkan aplikasi pada peranti mudah alih, sangat penting untuk memilih komponen UI yang betul. Banyak pemaju ...

Bagaimana untuk mengoptimumkan pengendalian perlanggaran perayauan orang ketiga di dalam bilik menggunakan tiga.js dan octree?Bagaimana untuk mengoptimumkan pengendalian perlanggaran perayauan orang ketiga di dalam bilik menggunakan tiga.js dan octree?Apr 30, 2025 pm 03:09 PM

Gunakan tiga.js dan octree untuk mengoptimumkan pengendalian perlanggaran perayauan orang ketiga di dalam bilik. Gunakan octree dalam tiga.js untuk melaksanakan perayauan orang ketiga di dalam bilik dan tambahkan perlanggaran ...

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.