中国工业网_网络工业品牌 资讯创造价值

javhd觀看教程

超文本傳輸協(xié)議(HTTP,Hypertext Transfer Protocol)是互聯(lián)網(wǎng)上應用最為廣泛的一種網(wǎng)絡協(xié)議。所有的Web文件都必須遵守這個標準。設計HTTP最初的目的是為了提供一種發(fā)布和接收HTML頁面的方法。1960年美國人Ted Nelson構思了一種通過計算機處理文本信息的方法,并稱之為超文本(hypertext),這成為了HTTP超文本傳輸協(xié)議標準架構的發(fā)展根基。Ted Nelson組織協(xié)調(diào)萬維網(wǎng)協(xié)會(World Wide Web Consortium)和互聯(lián)網(wǎng)工程工作小組(Internet Engineering Task Force)共同合作研究,最終發(fā)布了一系列的RFC文檔,其中著名的RFC 2616定義了HTTP 1.1。

HTTP基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù),HTTP屬于OSI網(wǎng)絡七層協(xié)議模型中的最上層:應用層,由請求和響應組成,是一個標準的客戶端服務器模型。HTTP是一個無狀態(tài)的協(xié)議。HTTP協(xié)議的版本有0.9、1.0、1.1和2.0,目前廣泛使用的是1.1版本。

HTTP默認端口號為80。它也可以承載在TLS和SSL之上,通過加密、認證的方式實現(xiàn)數(shù)據(jù)傳輸?shù)陌踩Q為HTTPS,HTTPS默認端口號為443。

HTTP協(xié)議具有以下特點:

● 簡單快速,客戶端向服務器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET和POST。每種方法規(guī)定了客戶與服務器聯(lián)系時的類型。由于HTTP協(xié)議簡單,使得HTTP服務器的程序規(guī)模小,因而通信速度很快。

● 靈活,HTTP允許傳輸任意類型的數(shù)據(jù)對象。正在傳輸?shù)念愋陀蒀ontent-Type加以標記。

● 無連接,無連接的含義是限制每次連接只處理一個請求。服務器處理完成客戶的請求,并收到客戶的應答后,即斷開連接。采用這種方式可以節(jié)省傳輸時間。

● 無狀態(tài),HTTP協(xié)議是無狀態(tài)協(xié)議。無狀態(tài)是指協(xié)議對于事務處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重新傳送數(shù)據(jù),這樣可能導致每次連接傳送的數(shù)據(jù)量增大。另一方面,在服務器不需要之前的信息時它的應答就比較快。

HTTP協(xié)議規(guī)定了Web的基本運作過程,以及瀏覽器與Web服務器之間的通信細節(jié)。客戶端主動發(fā)出HTTP請求,服務器端接收HTTP請求,再返回相應的HTTP響應結(jié)果。客戶端與服務器端之間的一次信息交換包括以下過程:

● 客戶端與服務器端建立TCP連接。

● 客戶端發(fā)出HTTP請求。

● 服務器端發(fā)出響應的HTTP響應。

● 客戶端與服務器端之間的TCP連接關閉。

當用戶在瀏覽器中輸入URL地址:http://www.itxdl.cn后,瀏覽器與服務器之間的具體通信過程如下:

● 瀏覽器與網(wǎng)絡上域名為www.itxdl.cn的Web服務器建立TCP連接。

● 瀏覽器發(fā)出要求訪問index.html(網(wǎng)站主頁,歡迎頁)的HTTP請求。

● Web服務器在接收到HTTP請求后,解析HTTP請求,然后發(fā)回包含index.html文件數(shù)據(jù)的HTTP響應。

● 瀏覽器在接收到HTTP響應后,解析HTTP響應,并在窗口中展示index.html文件。

● 瀏覽器與Web服務器之間的TCP連接關閉。

當用戶在上面的網(wǎng)站頁面中用鼠標點擊“JavaEE工程師”的超鏈接時,將會觸發(fā)瀏覽器與Web服務器開始一次新的HTTP通信,在這次通信過程中,瀏覽器會發(fā)出請求訪問“JavaEE工程師”頁面的HTTP請求。

從瀏覽器與Web服務器的通信過程中,可以看出瀏覽器應該具備以下功能:

● 請求與Web服務器建立TCP連接。

● 創(chuàng)建并發(fā)送HTTP請求。

● 接收并解析HTTP響應。

● 在瀏覽器窗口中展示HTML文檔。

Web服務器應該具有以下功能:

● 接收來自客戶端瀏覽器的TCP連接請求。

● 接收并解析HTTP請求。

● 創(chuàng)建并發(fā)送HTTP響應。

HTTP客戶端程序和HTTP服務器分別由不同的軟件開發(fā)商提供,目前最常使用的HTTP客戶端程序包括IE(Microsoft Edge)、Firefox、Opera和NetScape、Chrome等,最常用的HTTP服務器包括IIS和Apache等。HTTP客戶程序和服務器程序都可以用任意的編程語言編寫,那么用VC編寫的HTTP客戶程序能否與用Java編寫的HTTP服務器順利通信呢?答案是肯定的。此外,運行在Windows平臺上的HTTP客戶程序能否與運行在Linux平臺上的HTTP服務器通信呢?答案也是肯定的。

HTTP客戶程序和服務器程序分別用不同的語言編寫,并且運行在不用的平臺上,雙方如何能看得懂對方的數(shù)據(jù)呢?這要歸功于HTTP協(xié)議。HTTP協(xié)議嚴格規(guī)定了HTTP請求和HTTP響應的數(shù)據(jù)格式,只要HTTP服務器與客戶程序之間的交換數(shù)據(jù)都遵守HTTP協(xié)議,雙方都能看得懂對方發(fā)送的數(shù)據(jù),從而能順利交流。

HTTP協(xié)議由兩部分組成,分別是請求部分和響應部分。

1.3.2 HTTP協(xié)議中的請求

客戶端連接上服務器端后,向服務器端請求某個Web資源,稱之為客戶端向服務器端發(fā)送了一個HTTP請求。

一個完整的HTTP請求包含以下內(nèi)容:

● 請求行

● 請求頭

● 請求空行

● 請求體

一個HTTP請求的示例:

POST /servlet/login.html HTTP/1.1

Host: localhost:8088

Content-Length: 21

Cache-Control: max-age=0

Accept: text/html,application/xhtml+xml,application/xml; q=0.9,image/webp, */*;q=0.8

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64)

Content-Type: application/x-www-form-urlencoded

Accept-Encoding: gzip,deflate,sdch

Accept-Language: zh-CN,zh;q=0.8

name=snape&pwd=123456

現(xiàn)在我們分析上面請求示例中各部分的內(nèi)容:

● 請求行

HTTP請求中的請求行描述了請求方法,請求的服務器地址以及所使用的HTTP協(xié)議版本。

上面的HTTP請求實例中,位于請求行中的POST稱之為請求方式,HTTP協(xié)議中定義的請求方式如表1.1所示:

表1.1 HTTP協(xié)議中定義的請求方式

用戶如果沒有設置,默認情況下瀏覽器向服務器發(fā)送的都是GET請求,例如在瀏覽器中直接輸入地址訪問,點擊超鏈接訪問等都是GET請求,用戶如果想把請求方式改為POST,可通過更改表單的提交方式實現(xiàn)。

不管POST還是GET,都用于向服務器端請求某個Web資源,這兩種方式的區(qū)別會在本書的1.3.4小節(jié)中進行詳細的介紹。

在請求行中,請求方式之后的是URL地址和HTTP協(xié)議的版本。它們之間使用空格分隔。

● 請求頭

HTTP請求中的請求頭由一個個的鍵值對組成,是用來通知服務器有關客戶端的信息的。HTTP請求中常用以下的請求頭來告訴服務器一些信息:

(1)Accept:瀏覽器可接受的MIME類型。

(2)Accept-Charset:瀏覽器可接受的字符集。

(3)Accept-Encoding:瀏覽器能夠進行解碼的壓縮格式。

(4)Accept-Language:瀏覽器所處的語言環(huán)境環(huán)境。

(5)Host:瀏覽器通過這個頭告訴服務器想訪問哪臺主機。

(6)Content-Length:表示請求消息的正文長度。

(7)Content-Type:表示請求的MIME類型。

(8)User-Agent:表示瀏覽器的標識信息。

(9)Cache-Control:標識瀏覽器緩存機制。

● 請求空行

在HTTP請求的請求頭和請求體之間,使用了一個請求空行用來分隔,告訴服務器端已經(jīng)沒有請求頭信息了。即使請求體中沒有內(nèi)容,也必須有一個請求空行

● 請求體

請求體用來向服務器發(fā)送數(shù)據(jù)信息,使用“key=value&key=value”的形式,在GET請求中,請求體是空的,GET請求的數(shù)據(jù)信息在請求行中的URL地址中進行拼接。

1.3.3 HTTP協(xié)議中的響應

一個HTTP響應代表了服務器端向客戶端返回的數(shù)據(jù),一個HTTP完整的響應包含了以下內(nèi)容:

● 響應行

● 響應頭

● 響應體

一個HTTP響應的示例:

HTTP/1.1 200 OK

Server: Apache-Coyote/1.1

Last-Modified: Thu, 08 Sep 2016 12:59:41 GMT

Content-Type: text/html

Content-Length: 588

Date: Thu, 08 Sep 2016 12:59:54 GMT

這是一個HTML頁面

現(xiàn)在我們分析上面響應示例中各部分的內(nèi)容:

● 響應行

以及HTTP響應中的響應行用于描述服務器端對請求的處理結(jié)果,其中包括了HTTP協(xié)議的版本號已經(jīng)響應狀態(tài)碼信息,狀態(tài)碼用于表示服務器對請求的處理結(jié)果。

響應狀態(tài)碼由三位十進制數(shù)字組成,第一個十進制數(shù)定義了狀態(tài)碼的類型,后兩個數(shù)字沒有分類的作用。響應狀態(tài)碼共分為5中類型,如下表1.2所示。

表1.2 響應狀態(tài)碼分類

目前比較常見的響應狀態(tài)碼如表1.3所示。

表1.3 常見響應狀態(tài)碼

● 響應頭

響應頭用于描述服務器的基本信息,以及對返回的數(shù)據(jù)進行描述,服務器通過這些數(shù)據(jù)的描述信息,通知客戶端如何處理服務器端返回的數(shù)據(jù)。HTTP響應中常用以下的響應頭來告訴瀏覽器一些信息:

(1)Server:服務器名稱,一般由Web服務器設置的,如:Apache、Tomcat。

(2)Location:通過設置Location通知瀏覽器跳轉(zhuǎn)到指定的地址再次發(fā)送請求。

(3)Content-Encoding:該響應頭告訴瀏覽器返回的數(shù)據(jù)的壓縮格式。

(4)Content-Length:該響應頭告訴瀏覽器返回的數(shù)據(jù)的長度。

(5)Content-Type:通過該響應頭告訴瀏覽器返回的數(shù)據(jù)的類型。

(6)Date:表示當前的GMT時間。

(7)Last-Modified:表示文檔的最后修改時間。

● 響應體

在HTTP響應中的響應體中,包含了服務器端返回給瀏覽器的數(shù)據(jù)。根據(jù)Content-Type類型的不同,響應體中的數(shù)據(jù)形式也不同。

1.3.4 HTTP協(xié)議中的GET和POST請求的區(qū)別

● GET請求:

(1)GET請求的數(shù)據(jù),以鍵值對的形式在請求行中的URL后,以?進行拼接,多個鍵值對之間使用&拼接。

(2)GET請求只能傳輸字符串類型的數(shù)據(jù)。

(3)GET請求因瀏覽器限制URL長度的原因只能傳輸少量數(shù)據(jù)。

(4)因為GET請求會將傳輸?shù)臄?shù)據(jù)顯示在地址欄中,所以相對POST請求不安全。

● POST請求:

(1)POST請求的數(shù)據(jù),以鍵值對的形式存儲在請求體中,多個鍵值對之間使用&拼接。

(2)POST請求可以傳輸任意類型的數(shù)據(jù)。

(3)POST請求對傳輸?shù)臄?shù)據(jù)的大小沒有限制。

(4)相對于GET請求,POST請求不會將傳輸?shù)臄?shù)據(jù)顯示在地址欄中,較為安全。

標簽: java   教程  
來源:星島中文網(wǎng)
編輯:GY653

免責聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作媒體供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權或存在不實內(nèi)容時,應及時向本網(wǎng)站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內(nèi)容或斷開相關鏈接。

  • 相關推薦
主站蜘蛛池模板: 金酱酒_金酱酒代理加盟招商_OEM贴牌企业定制! – 金酱酒代理加盟!茅台镇较早的酿酒烧坊,年产优质酱香白酒5000余吨,仁怀市十强白酒企业,主营主品:金酱酒、金酱陈香酒、酱香老酒等系列品牌产品 | 氧化膜测厚仪-瓶壁测厚仪-QNIX菲尼克斯膜厚仪-深圳市时代之峰科技有限公司 | 无土栽培|无土栽培技术|水肥一体化|无土栽培蔬菜 | 实验室冷水机-冷却循环水系统-深圳市达沃西制冷设备厂 | 徐州护栏,铝艺栏杆,铝艺大门,铝艺栏杆门,别墅铝艺大门-徐州桂丰金属科技有限公司 | 重庆中医针灸推拿培训_产后康复理疗师培训_重庆市六合职业培训学校 | 合肥固化地坪-安徽耐磨地坪-合肥环氧地坪厂家-安徽玉平地坪工程有限公司 | 深山工作室提供网络投票系统|微信公众号投票|微信公众号小程序|抖音小程序|百度小程序|微信公众号开发|企业网站建设 | 医药招商 千虹医药网-专业的医药招商-医药代理-药品招商-药品代理信息发布平台 | 上海纳美鞋业有限公司 | 久久91精品久久91综合_国产亚洲自拍一区_国产精品第1页_亚洲高清视频一区_91成人午夜在线精品_亚洲国产精品网站在线播放_亚洲国产成人久久综合区_国产精品亚洲专区在线观看_免费视频精品一区二区三区 | 水处理设备厂家_纯净水设备_超纯水设备价格找西安瑞泉水处理 | 面粉加工成套设备|面粉加工设备|面粉加工机械|面粉机组设备-河南成立粮油机械有限公司 | 医药冷库设计建造-食品保鲜冷库安装-物流冷库工程造价-开冉制冷 医盟网-全国首家医疗信息化行业门户网站 | 硝酸铵钙|山西硝酸钙|硝酸钾|太原硝酸钙镁|硝酸钾钙|亚硝酸钠-山西玉彤化工有限公司 | 资质代办-企业施工资质代办,湖南建筑资质代办公司-[小凯企服] | 曙海培训-仿真培训Linux培训html5培单片机培训PCB培训python培训PLC培训C语言培训android培训物联网培训无线电培训欧姆龙培训工业机器人培训5G培训Hadoop培训CFD培训项目外包开发咨询 | 热电阻_热电偶_压力表_压力变送器_磁翻板液位计 - 淮安忠和测控仪表有限公司 | 生物除臭剂-养殖场垃圾除臭剂-垃圾填埋场除臭剂-成都微菌环境 | 全国家博会_2025家博会时间表_家博会门票_免费索票入口 | 陶瓷靶材_氧化铌靶材_合金靶材_专注河北氧化铌靶材批发-河北东同光电科技有限公司 | 上海国际餐饮博览会|餐饮供应|餐饮服务|餐饮加盟 | 呼吸家官网|肺功能检测仪生产厂家|国产肺功能仪知名品牌|肺功能检测仪|肺功能测试仪|婴幼儿肺功能仪|弥散残气肺功能仪|肺功能测试系统|广州红象医疗科技有限公司|便携式肺功能仪|大肺功能仪|呼吸康复一体机|儿童肺功能仪|肺活量计|医用简易肺功能仪|呼吸康复系统|肺功能仪|弥散肺功能仪(大肺)|便携式肺功能检测仪|肺康复|呼吸肌力测定肺功能仪|肺功能测定仪|呼吸神经肌肉刺激仪|便携式肺功能 | 柯赛德斯-加美润滑油-专业做汽车工业润滑油品牌加盟代理 | 眉山净源居环保科技有限公司,眉山除甲醛公司,眉山甲醛治理,眉山保洁服务,眉山家政保洁,眉山家电维修 - 眉山净源居环保科技有限公司,眉山除甲醛公司,眉山甲醛治理,眉山保洁服务,眉山家政保洁,眉山家电维修 | 上海航空货运,上海空运,东方航空快递,机场物流,航空快运,上海东方航空托运公司 | 生物安全柜检测,GMP设备确认,仪器性能确认,洁净厂房检测,仓储温湿度检测-上海熙迈 | 河南车用尿素设备_郑州车用尿素设备_河南江宇环保车用尿素液厂家 | 全棉帆布厂家_加工帆布_涤棉帆布价格_染色帆布定制_广州美丽华皮革帆布-广州美丽华皮革帆布 | 专业无机盐,化工产品检测公司,水处理剂检测公司,第三方水质检测机构—准诺检测 | 注塑模具厂,注塑模具加工,塑胶模具加工-东莞世邦塑胶官网 | 廊坊微信营销,廊坊小程序开发,廊坊APP开发(安卓_苹果ios开发),微信朋友圈广告,百度推广,廊坊网络公司品牌服务商-河北盛秋网络科技有限公司 | 佳龙食品集团|高端辣条领导品牌| 小鼠实验(试验)用臭氧发生器_进口臭氧发生器 - 北京同林臭氧实验网 | 永光机械-小型建筑机械领航者,公司专注于小型建筑、工程机械的研发与制造 | 桥梁伸缩缝_桥梁伸缩缝厂家_桥梁伸缩缝价格-衡水淞皓路桥养护工程有限公司 | 涂塑复合钢管,大口径涂塑钢管,内外涂塑钢管厂家-沧州友诚管业有限公司 | 绝缘油介电强度测试仪|d33压电测试仪|准静态d33压电测量仪厂家直销-上海蓝巢电气有限公司【官网】 | 液压升降机_导轨式电动液压升降平台_别墅电梯生产厂家-海南重康升降机 | 河北伟业波纹管-百顺牌波纹补偿器(波纹管,膨胀节,伸缩节)、非金属补偿器 | 青岛除甲醛公司|青岛甲醛治理|青岛除甲醛|甲醛检测|光触媒除甲醛|装修除味除甲醛|新房除甲醛|青岛室内环境污染检测治理|青岛闪洁环保科技有限公司官网 |