国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

HTTP常用請(qǐng)求頭和響應(yīng)頭有哪些?

這篇具有很好參考價(jià)值的文章主要介紹了HTTP常用請(qǐng)求頭和響應(yīng)頭有哪些?。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、什么是http

超文本傳輸協(xié)議( Hypertext Transfer Protocol ,HTTP)的請(qǐng)求和響應(yīng)消息中,協(xié)議頭部分的那些組件。用來準(zhǔn)確描述正在獲取的資源、服務(wù)器或者客戶端的行為,定義了HTTP事務(wù)中的具體操作參數(shù)。

二、什么是http消息頭

客戶端請(qǐng)求(Request)或服務(wù)器響應(yīng)(Response)時(shí)傳遞的,位請(qǐng)求或響應(yīng)的第一行,HTTP消息體(請(qǐng)求或響應(yīng)的內(nèi)容)是其后傳輸。HTTP消息頭,以明文的字符串格式傳送,是以冒號(hào)分隔的鍵/值對(duì),如:Accept-Charset: utf-8,每一個(gè)消息頭最后以回車符(CR)和換行符(LF)結(jié)尾。

http請(qǐng)求頭和響應(yīng)頭,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

三、常用的http請(qǐng)求頭

Accept: text/html? // 瀏覽器可以接受服務(wù)器回發(fā)的類型為 text/html。Accept: */* ? 代表瀏覽器可以處理所有類型,(一般瀏覽器發(fā)給服務(wù)器都是發(fā)這個(gè))。

Accept-Encoding: gzip, deflate // 瀏覽器申明自己接收的編碼方法,通常指定壓縮方法,是否支持壓縮,支持什么壓縮方法(gzip,deflate)。

Accept-Language: zh-CN,zh;q=0.9 ?瀏覽器申明自己接收的語言。

Connection: keep-alive //?當(dāng)一個(gè)網(wǎng)頁打開完成后,客戶端和服務(wù)器之間用于傳輸HTTP數(shù)據(jù)的TCP連接不會(huì)關(guān)閉,如果客戶端再次訪問這個(gè)服務(wù)器上的網(wǎng)頁,會(huì)繼續(xù)使用這一條已經(jīng)建立的連接。 Connection: close 代表一個(gè)Request完成后,客戶端和服務(wù)器之間用于傳輸HTTP數(shù)據(jù)的TCP連接會(huì)關(guān)閉, 當(dāng)客戶端再次發(fā)送Request,需要重新建立TCP連接。

Content-Type: application/json? //?當(dāng)客戶端向服務(wù)端發(fā)起HTTP的POST請(qǐng)求時(shí),客戶端告訴服務(wù)端,我們發(fā)送的數(shù)據(jù)類型,方便服務(wù)端去解析數(shù)據(jù)。HTTP 中的 post 請(qǐng)求使用最多的Content-Type 類型是: application/json

Content-Type 的幾種常見類型有:

①. application/x-www-form-urlencoded? //?說明:最常見的 POST 提交數(shù)據(jù)的方式,原生Form表單,如果不設(shè)置 enctype 屬性,默認(rèn)為application/x-www-form-urlencoded 方式提交數(shù)據(jù)。

②. multipart/form-data? // 說明:一個(gè)常見的 POST 數(shù)據(jù)提交的方式, Form 表單的 enctype 設(shè)置為multipart/form-data,它會(huì)將表單的數(shù)據(jù)處理為一條消息,以標(biāo)簽為單元,用分隔符分開。
它既可以上傳鍵值對(duì),也可以上傳文件,甚至多個(gè)文件。

③. application/json? // 說明:用來告訴服務(wù)端消息主體是序列化后的 JSON 字符串,其中一個(gè)好處就是JSON 格式支持比鍵值對(duì)復(fù)雜得多的結(jié)構(gòu)化數(shù)據(jù)。

④. text/xml? // 說明:提供統(tǒng)一的方法來描述和交換獨(dú)立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)

⑤. binary(application/octet-stream) // 說明:用來傳輸二進(jìn)制文件類型

請(qǐng)求頭設(shè)置方法如下:

// axios請(qǐng)求體中設(shè)置
axios({
? url: '/api/user',
? method: 'post',
? headers: {
? ? 'Content-Type': 'application/json'
? }
})

// 請(qǐng)求攔截器中設(shè)置
http.interceptors.request.use(
? config => {
?? ?config.headers['Content-Type'] = 'application/json'
? }
)

Host: www.baidu.com // 請(qǐng)求報(bào)頭域主要用于指定被請(qǐng)求資源的Internet主機(jī)和端口號(hào),它通常從HTTP URL中提取出來的。

Origin: http://47.104.200.167:8076? //? 組成:協(xié)議 + 域名 + 端口號(hào)

指示了請(qǐng)求來自于哪個(gè)站點(diǎn),該字段僅指示服務(wù)器名稱,不包含任何路徑信息,除了不包含路徑信息,該字段與 Referer 首部字段相似,瀏覽器自動(dòng)添加到http請(qǐng)求 Header 中,無需手動(dòng)設(shè)置。

Referer: https://www.baidu.com/?tn=62095104_8_oem_dg? // 當(dāng)瀏覽器向web服務(wù)器發(fā)送請(qǐng)求的時(shí)候,一般會(huì)帶上Referer,告訴服務(wù)器我是從哪個(gè)頁面鏈接過來的,服務(wù)器籍此可以獲得一些信息用于處理。

User-AgentUser-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36? // 告訴HTTP服務(wù)器, 客戶端使用的操作系統(tǒng)和瀏覽器的名稱和版本。

Cache-ControlCache-Control: private? // 默認(rèn)為private 響應(yīng)只能夠作為私有的緩存,不能再用戶間共享。

Cache-Control: public // 響應(yīng)會(huì)被緩存,并且在多用戶間共享。正常情況, 如果要求HTTP認(rèn)證,響應(yīng)會(huì)自動(dòng)設(shè)置為 private。

Cache-Control: must-revalidate? // 響應(yīng)在特定條件下會(huì)被重用,以滿足接下來的請(qǐng)求,但是它必須到服務(wù)器端去驗(yàn)證它是不是仍然是最新的。Cache-Control:no-cache 響應(yīng)不會(huì)被緩存,而是實(shí)時(shí)向服務(wù)器端請(qǐng)求資源。

Cache-Control: max-age=10? // 設(shè)置緩存最大的有效時(shí)間,但是這個(gè)參數(shù)定義的是時(shí)間大?。ū热纾?0)而不是確定的時(shí)間點(diǎn)。單位是[秒 seconds]。

Cache-Control: no-store? // 在任何條件下,響應(yīng)都不會(huì)被緩存,并且不會(huì)被寫入到客戶端的磁盤里,這也是基于安全考慮的某些敏感的響應(yīng)才會(huì)使用這個(gè)。

Cookie: '123456abcefg' //?Cookie是用來存儲(chǔ)一些用戶信息以便讓服務(wù)器辨別用戶身份的(大多數(shù)需要登錄的網(wǎng)站上面會(huì)比較常見),比如cookie會(huì)存儲(chǔ)一些用戶的用戶名和密碼,當(dāng)用戶登錄后就會(huì)在客戶端產(chǎn)生一個(gè)cookie來存儲(chǔ)相關(guān)信息,這樣瀏覽器通過讀取cookie的信息去服務(wù)器上驗(yàn)證并通過后會(huì)判定你是合法用戶,從而允許查看相應(yīng)網(wǎng)頁。當(dāng)然cookie里面的數(shù)據(jù)不僅僅是上述范圍,還有很多信息可以存儲(chǔ)是cookie里面,比如sessionid等。

Range: bytes=0-5? // 指定第一個(gè)字節(jié)的位置和最后一個(gè)字節(jié)的位置。用于告訴服務(wù)器自己想取對(duì)象的哪部分。

四、常用的http響應(yīng)頭

Access-Control-Allow-Origin: *? ?// *號(hào)代表所有網(wǎng)站可以跨域資源共享,如果當(dāng)前字段為*那么Access-Control-Allow-Credentials就不能為trueAccess-Control-Allow-Origin: www.baidu.com 指定哪些網(wǎng)站可以跨域資源共享。

Access-Control-Allow-Methods:GET, POST, OPTIONS? // 允許哪些方法來訪問。

Access-Control-Allow-Credentials: true? // 是否允許發(fā)送cookie。默認(rèn)情況下,Cookie不包括在CORS請(qǐng)求之中。設(shè)為true,即表示服務(wù)器明確許可,Cookie可以包含在請(qǐng)求中,一起發(fā)給服務(wù)器。這個(gè)值也只能設(shè)為true,如果服務(wù)器不要瀏覽器發(fā)送Cookie,刪除該字段即可。如果access-control-allow-origin為*,當(dāng)前字段就不能為true。

Cache-Control: private? // 默認(rèn)為private ?響應(yīng)只能夠作為私有的緩存,不能再用戶間共享

Cache-Control: public? // 瀏覽器和緩存服務(wù)器都可以緩存頁面信息。

Cache-Control: must-revalidate? // 對(duì)于客戶機(jī)的每次請(qǐng)求,代理服務(wù)器必須想服務(wù)器驗(yàn)證緩存是否過時(shí)。

Cache-Control: no-cache? // 瀏覽器和緩存服務(wù)器都不應(yīng)該緩存頁面信息。

Cache-Control: max-age=10? // 是通知瀏覽器10秒之內(nèi)不要煩我,自己從緩沖區(qū)中刷新。

Cache-Control: no-store? // 請(qǐng)求和響應(yīng)的信息都不應(yīng)該被存儲(chǔ)在對(duì)方的磁盤系統(tǒng)中。

Content-Type:text/html;charset=UTF-8? // 告訴客戶端,資源文件的類型,還有字符編碼,客戶端通過utf-8對(duì)資源進(jìn)行解碼,然后對(duì)資源進(jìn)行html解析。通常我們會(huì)看到有些網(wǎng)站是亂碼的,往往就是服務(wù)器端沒有返回正確的編碼。

Content-Encoding: gzip? // 告訴客戶端,服務(wù)端發(fā)送的資源是采用gzip編碼的,客戶端看到這個(gè)信息后,應(yīng)該采用gzip對(duì)資源進(jìn)行解碼。

Date: Tue, 03 Apr 2018 03:52:28 GMT? // 這個(gè)是服務(wù)端發(fā)送資源時(shí)的服務(wù)器時(shí)間,GMT是格林尼治所在地的標(biāo)準(zhǔn)時(shí)間。http協(xié)議中發(fā)送的時(shí)間都是GMT的,這主要是解決在互聯(lián)網(wǎng)上,不同時(shí)區(qū)在相互請(qǐng)求資源的時(shí)候,時(shí)間混亂問題。

Server:Tengine/1.4.6? // 這個(gè)是服務(wù)器和相對(duì)應(yīng)的版本,只是告訴客戶端服務(wù)器信息。

Transfer-Encoding:chunked? // 這個(gè)響應(yīng)頭告訴客戶端,服務(wù)器發(fā)送的資源的方式是分塊發(fā)送的。一般分塊發(fā)送的資源都是服務(wù)器動(dòng)態(tài)生成的,在發(fā)送時(shí)還不知道發(fā)送資源的大小,所以采用分塊發(fā)送,每一塊都是獨(dú)立的,獨(dú)立的塊都能標(biāo)示自己的長(zhǎng)度,最后一塊是0長(zhǎng)度的,當(dāng)客戶端讀到這個(gè)0長(zhǎng)度的塊時(shí),就可以確定資源已經(jīng)傳輸完了。

Expires:Sun, 1 Jan 2000 01:00:00 GMT 這個(gè)響應(yīng)頭也是跟緩存有關(guān)的,告訴客戶端在這個(gè)時(shí)間前,可以直接訪問緩存副本,很顯然這個(gè)值會(huì)存在問題,因?yàn)榭蛻舳撕头?wù)器的時(shí)間不一定會(huì)都是相同的,如果時(shí)間不同就會(huì)導(dǎo)致問題。所以這個(gè)響應(yīng)頭是沒有Cache-Control:max-age=*這個(gè)響應(yīng)頭準(zhǔn)確的,因?yàn)閙ax-age=date中的date是個(gè)相對(duì)時(shí)間,不僅更好理解,也更準(zhǔn)確。

Connection:keep-alive? // 這個(gè)字段作為回應(yīng)客戶端的Connection:keep-alive,告訴客戶端服務(wù)器的tcp連接也是一個(gè)長(zhǎng)連接,客戶端可以繼續(xù)使用這個(gè)tcp連接發(fā)送http請(qǐng)求。

ETag: "737060cd8c284d8af7ad3082f209582d"? // 就是一個(gè)對(duì)象(比如URL)的標(biāo)志值,就一個(gè)對(duì)象而言,比如一個(gè)html文件,如果被修改了,其Etag也會(huì)別修改,所以,ETag的作用跟Last-Modified的作用差不多,主要供WEB服務(wù)器判斷一個(gè)對(duì)象是否改變了。比如前一次請(qǐng)求某個(gè)html文件時(shí),獲得了其 ETag,當(dāng)這次又請(qǐng)求這個(gè)文件時(shí),瀏覽器就會(huì)把先前獲得ETag值發(fā)送給WEB服務(wù)器,然后WEB服務(wù)器會(huì)把這個(gè)ETag跟該文件的當(dāng)前ETag進(jìn)行對(duì)比,然后就知道這個(gè)文件有沒有改變了。

Refresh: 5; url=http://baidu.com? ?// 用于重定向,或者當(dāng)一個(gè)新的資源被創(chuàng)建時(shí)。默認(rèn)會(huì)在5秒后刷新重定向。

http請(qǐng)求頭示例

http請(qǐng)求頭和響應(yīng)頭,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

http響應(yīng)頭示例

http請(qǐng)求頭和響應(yīng)頭,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)文章來源地址http://www.zghlxwxcb.cn/news/detail-721650.html

到了這里,關(guān)于HTTP常用請(qǐng)求頭和響應(yīng)頭有哪些?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Qt 網(wǎng)絡(luò)編程之美:探索 URL、HTTP、服務(wù)發(fā)現(xiàn)與請(qǐng)求響應(yīng)

    Qt 網(wǎng)絡(luò)編程是使用 Qt 框架進(jìn)行網(wǎng)絡(luò)應(yīng)用開發(fā)的重要組成部分。Qt 是一個(gè)跨平臺(tái)的 C++ 應(yīng)用程序開發(fā)框架,廣泛應(yīng)用于各種領(lǐng)域,包括桌面應(yīng)用、移動(dòng)應(yīng)用和嵌入式設(shè)備。在本文中,我們將探討 Qt 網(wǎng)絡(luò)編程的優(yōu)勢(shì),以及本文涉及的主題,包括 URL、HTTP、服務(wù)發(fā)現(xiàn)和請(qǐng)求響應(yīng)等。

    2023年04月23日
    瀏覽(24)
  • Python處理HTTP響應(yīng)的常用技巧:馴服網(wǎng)絡(luò)野獸的藝術(shù)

    Python處理HTTP響應(yīng)的常用技巧:馴服網(wǎng)絡(luò)野獸的藝術(shù)

    在網(wǎng)絡(luò)世界里,HTTP響應(yīng)就像是一只難以捉摸的野獸。它時(shí)而溫順,提供你想要的數(shù)據(jù);時(shí)而暴躁,給你一個(gè)404或500的錯(cuò)誤碼。作為Python程序員,我們的任務(wù)就是馴服這只野獸,從中提取出有價(jià)值的信息。今天,就讓我們來探討一下馴服網(wǎng)絡(luò)野獸的常用技巧吧! 1. 捕獲響應(yīng)內(nèi)

    2024年02月20日
    瀏覽(33)
  • Nodejs 第三十一章(響應(yīng)頭和請(qǐng)求頭)

    Nodejs 第三十一章(響應(yīng)頭和請(qǐng)求頭)

    響應(yīng)頭 HTTP響應(yīng)頭(HTTP response headers)是在HTTP響應(yīng)中發(fā)送的元數(shù)據(jù)信息,用于描述響應(yīng)的特性、內(nèi)容和行為。它們以鍵值對(duì)的形式出現(xiàn),每個(gè)鍵值對(duì)由一個(gè)標(biāo)頭字段(header field)和一個(gè)相應(yīng)的值組成。 例如以下示例 響應(yīng)頭和跨域之間的關(guān)系 cors 跨域資源共享(Cross-Origin Res

    2024年01月16日
    瀏覽(19)
  • Nodejs基礎(chǔ)6之HTTP模塊的獲取請(qǐng)求行和請(qǐng)求頭、獲取請(qǐng)求體、獲取請(qǐng)求路徑和查詢字符串、http請(qǐng)求練習(xí)、設(shè)置HTTP響應(yīng)報(bào)文、http響應(yīng)練習(xí)

    Nodejs基礎(chǔ)6之HTTP模塊的獲取請(qǐng)求行和請(qǐng)求頭、獲取請(qǐng)求體、獲取請(qǐng)求路徑和查詢字符串、http請(qǐng)求練習(xí)、設(shè)置HTTP響應(yīng)報(bào)文、http響應(yīng)練習(xí)

    含義 語法 重點(diǎn)掌握 請(qǐng)求方法 request.method * 請(qǐng)求版本 request.httpVersion 請(qǐng)求路徑 request.url * URL 路徑 require(‘url’).parse(request.url).pathname * URL 查詢字符串 require(‘url’).parse(request.url, true).query * 請(qǐng)求頭 request.headers * 請(qǐng)求體 request.on(‘data’, function(chunk){}),request.on(‘end’, functio

    2024年02月20日
    瀏覽(23)
  • HTTP請(qǐng)求響應(yīng)詳解 (HTTP請(qǐng)求數(shù)據(jù)格式,常見請(qǐng)求方式,后端響應(yīng)參數(shù))及Apifox(postman)使用方式

    HTTP請(qǐng)求響應(yīng)詳解 (HTTP請(qǐng)求數(shù)據(jù)格式,常見請(qǐng)求方式,后端響應(yīng)參數(shù))及Apifox(postman)使用方式

    目錄 一.HTTP協(xié)議? 二.HTTP請(qǐng)求數(shù)據(jù)格式? 請(qǐng)求方式 三.后端響應(yīng)請(qǐng)求 基于SpringBoot響應(yīng)數(shù)據(jù) 請(qǐng)求響應(yīng)的參數(shù)類型 同一響應(yīng)格式 四.Apifox(postman)使用方法 HTTP(Hypertext Transfer Protocol,超文本傳輸協(xié)議)是一種用于傳輸超媒體文檔(如HTML)的應(yīng)用層協(xié)議。 HTTP的特點(diǎn)和工作原理如下

    2024年03月09日
    瀏覽(30)
  • HTTP工具類封裝與http請(qǐng)求響應(yīng)

    HTTP工具類封裝與http請(qǐng)求響應(yīng)

    一、前言 在Java web系統(tǒng)中經(jīng)常需要與外部接口進(jìn)行對(duì)接,比較多的方式就是是http的方式。在springboot中,我們可以直接使用封裝的feign如:我們?nèi)フ?qǐng)求微信的接口,定義一個(gè)client客戶端,使用feign框架去請(qǐng)求就可以。但是也有很多系統(tǒng)沒有使用feign的框架,那就需要使用http工具

    2024年04月25日
    瀏覽(20)
  • HTTP、請(qǐng)求和響應(yīng)

    HTTP、請(qǐng)求和響應(yīng)

    1.規(guī)定了交互的方式:請(qǐng)求、響應(yīng) 2.數(shù)據(jù)的格式:行、頭、體 在HTTP/1.0中默認(rèn)使用短連接。也就是說,客戶端和服務(wù)器每進(jìn)行一次HTTP操作,就建立一次連接,任務(wù)結(jié)束就中斷連接。當(dāng)客戶端瀏覽器訪問的某個(gè)HTML或其他類型的Web頁中包含有其他的Web資源(如JavaScript文件、圖像

    2024年02月20日
    瀏覽(33)
  • HTTP協(xié)議,請(qǐng)求響應(yīng)
  • Java http 響應(yīng)式請(qǐng)求和非響應(yīng)式請(qǐng)求有什么區(qū)別

    以下是一個(gè)使用Spring WebFlux實(shí)現(xiàn)真正的流式編程的案例: 運(yùn)行Spring Boot應(yīng)用程序,并使用瀏覽器或類似cURL的工具發(fā)送GET請(qǐng)求: 獲取所有用戶的請(qǐng)求:http://localhost:8080/users/stream 你將會(huì)看到一個(gè)持續(xù)不斷的流式響應(yīng),每秒鐘返回一個(gè)用戶對(duì)象。這個(gè)案例中,我們使用了 @GetMapp

    2024年01月17日
    瀏覽(42)
  • 網(wǎng)站建設(shè)入門教程||HTTP 請(qǐng)求方法||HTTP 響應(yīng)頭信息

    根據(jù) HTTP 標(biāo)準(zhǔn),HTTP 請(qǐng)求可以使用多種請(qǐng)求方法。 HTTP1.0 定義了三種請(qǐng)求方法: GET, POST 和 HEAD 方法。 HTTP1.1 新增了六種請(qǐng)求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。 序號(hào) 方法 描述 1 GET 請(qǐng)求指定的頁面信息,并返回實(shí)體主體。 2 HEAD 類似于 GET 請(qǐng)求,只不過返回的

    2024年02月12日
    瀏覽(40)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包