Ajax初探(上)

Ajax是一種異步的前后端數(shù)據(jù)交互的技術(shù)禾酱,它可以在不刷新瀏覽器的情況下科侈,向服務(wù)器端發(fā)送http請(qǐng)求和少量數(shù)據(jù),服務(wù)器端接收數(shù)據(jù)辅辩,對(duì)數(shù)據(jù)進(jìn)行一系列的操作难礼,查詢數(shù)據(jù)庫(kù)驗(yàn)證或者直接處理數(shù)據(jù)等,將處理結(jié)果返回給客戶端玫锋。

理解網(wǎng)絡(luò)世界的數(shù)據(jù)交換

一開(kāi)始學(xué)習(xí)Ajax的人蛾茉,一聽(tīng)到上面那么多陌生的概念性的名詞,馬上就迷糊了撩鹿,其實(shí)Ajax一點(diǎn)也不難臀稚,實(shí)現(xiàn)起來(lái)非常簡(jiǎn)單,但是需要一點(diǎn)貫通前后端的知識(shí)三痰,畢竟Ajax是前端后的交互技術(shù)吧寺。啥都別說(shuō),先看圖散劫,了解一下網(wǎng)絡(luò)世界是如何交換信息的稚机。

客戶端與服務(wù)器端交互

client 的中文意思是客戶端,指的一般是我們的瀏覽器获搏,而server 的中文意思是服務(wù)器赖条,指的是放置網(wǎng)站的服務(wù)器。我們平時(shí)上網(wǎng)打開(kāi)瀏覽器瀏覽網(wǎng)頁(yè)其實(shí)就是這么一個(gè)過(guò)程:

  1. 打開(kāi)瀏覽器常熙,在地址欄里輸入一個(gè)url地址

背后機(jī)理:url地址其實(shí)就是向服務(wù)器發(fā)送一個(gè)請(qǐng)求纬乍,比如 "http://www.baidu.com" ,就是向baidu.com域名下的www主機(jī)發(fā)送一個(gè)請(qǐng)求。| 域名和主機(jī)名的區(qū)別與聯(lián)系
拋出疑問(wèn)什么是請(qǐng)求裸卫?請(qǐng)求包括哪些內(nèi)容仿贬?

  1. 如果你有網(wǎng)絡(luò),并且你的網(wǎng)址沒(méi)有輸錯(cuò)的話墓贿,你可以得到一張百度首頁(yè)的網(wǎng)頁(yè)

背后機(jī)理:在遠(yuǎn)方[不知道有多遠(yuǎn)]的服務(wù)器一般是能夠接收到你的請(qǐng)求的茧泪,接收到請(qǐng)求之后,它會(huì)處理你這個(gè)請(qǐng)求聋袋,并且給你響應(yīng)队伟,返回你所請(qǐng)求的數(shù)據(jù)或文件。
比如你輸入百度的網(wǎng)址幽勒,那么這個(gè)網(wǎng)址就被嵌入到請(qǐng)求的內(nèi)容去了嗜侮,服務(wù)器接收到你請(qǐng)求的內(nèi)容后,對(duì)內(nèi)容進(jìn)行判斷,確定返回的數(shù)據(jù)或文件锈颗,這就是請(qǐng)求處理缠借,返回一個(gè)百度首頁(yè)的網(wǎng)頁(yè),這就是響應(yīng)并返回?cái)?shù)據(jù)宜猜。
拋出疑問(wèn)什么是響應(yīng)泼返?響應(yīng)包括哪些內(nèi)容?

總結(jié)
實(shí)際上姨拥,上面兩點(diǎn)很淺層地闡述了網(wǎng)絡(luò)世界的信息交換绅喉,我們?cè)跒g覽器打開(kāi)的一張張網(wǎng)頁(yè)都是通過(guò)這樣的方式得到的〗形冢客戶端發(fā)送請(qǐng)求柴罐,服務(wù)器接收到請(qǐng)求,作出響應(yīng)并返回?cái)?shù)據(jù)或文件憨奸。

理解HTTP協(xié)議

HTTP協(xié)議是指超文本傳輸協(xié)議革屠,用于從www服務(wù)器傳輸?shù)奖镜貫g覽器的傳輸方式,它規(guī)定了客戶端http請(qǐng)求和服務(wù)器端響應(yīng)的方式和交互規(guī)范排宰。
HTTP協(xié)議有以下特征:

  1. HTTP是一種無(wú)狀態(tài)的協(xié)議似芝,所謂無(wú)狀態(tài)就是不建立持久的連接,一開(kāi)始的時(shí)候板甘,客戶端和服務(wù)器的連接是關(guān)閉狀態(tài)党瓮,當(dāng)客戶端發(fā)送一個(gè)請(qǐng)求給服務(wù)器的時(shí)候,服務(wù)器和客戶端的連接被開(kāi)發(fā)盐类,響應(yīng)客戶端后寞奸,連接又被關(guān)閉了,等待客戶端下一次發(fā)送請(qǐng)求時(shí)再打開(kāi)在跳。
  2. HTTP是一種無(wú)記憶的協(xié)議枪萄,它根本不知道是哪個(gè)客戶端與服務(wù)器連接了,當(dāng)客戶端跟服務(wù)器連接后猫妙,同一個(gè)客戶端再次連接瓷翻,是沒(méi)有記憶的。當(dāng)然解決這個(gè)問(wèn)題可以使用cookie吐咳。

HTTP請(qǐng)求

一個(gè)完整的HTTP請(qǐng)求過(guò)程包含以下七個(gè)步驟:

  1. 瀏覽器打開(kāi)TCP連接逻悠,構(gòu)建Internet,這樣才能夠訪問(wèn)web互聯(lián)網(wǎng)上的資源韭脊,通俗地
  2. 客戶端發(fā)送http請(qǐng)求命令,如GET/sample/hello.jsp HTTP/1.1
  3. 客戶端發(fā)送http請(qǐng)求頭信息
  4. 服務(wù)器返回http響應(yīng)单旁,如狀態(tài)碼
  5. 服務(wù)器返回http響應(yīng)頭信息
  6. 服務(wù)器返回收響應(yīng)數(shù)據(jù)
  7. 服務(wù)器關(guān)閉TCP連接
http請(qǐng)求

一個(gè)http請(qǐng)求一般包括以下幾個(gè)部分

  1. 請(qǐng)求方式
    請(qǐng)求方式有兩個(gè)沪羔,GET和POST
  2. 請(qǐng)求頭
    請(qǐng)求頭包括一些客戶端信息,請(qǐng)求內(nèi)容類(lèi)型等等
  3. 請(qǐng)求體
    請(qǐng)求體放置請(qǐng)求發(fā)送到服務(wù)器的一些數(shù)據(jù)
http請(qǐng)求頭信息
GET請(qǐng)求和POST請(qǐng)求

1.GET請(qǐng)求使用url傳輸數(shù)據(jù),向服務(wù)器發(fā)送的數(shù)據(jù)直接顯示在url上蔫饰,不安全琅豆,所以GET請(qǐng)求一般用來(lái)查詢信息,請(qǐng)求資源篓吁,而且GET發(fā)送的數(shù)據(jù)大小也有限制茫因,主要是因?yàn)闉g覽器對(duì)url長(zhǎng)度有所限制
2.POST請(qǐng)求能夠模擬表單向服務(wù)器發(fā)送數(shù)據(jù),其發(fā)送的數(shù)據(jù)不會(huì)直接顯示在url上杖剪,所以用來(lái)發(fā)送一些個(gè)人賬號(hào)密碼的數(shù)據(jù)冻押,修改數(shù)據(jù)庫(kù)信息,是十分的安全盛嘿,對(duì)于POST請(qǐng)求發(fā)送的數(shù)據(jù)大小洛巢,沒(méi)有限制。

http響應(yīng)

一個(gè)http響應(yīng)一般包括以下幾個(gè)部分

  1. http響應(yīng)狀態(tài)碼
    如200 ok 次兆,就表示服務(wù)器已經(jīng)成功接收請(qǐng)求
    還有一個(gè)我們常常都會(huì)看到的狀態(tài)碼稿茉,就是404,表示所請(qǐng)求的資源不存在


    404 not found
  2. http響應(yīng)頭
    響應(yīng)頭包括一些服務(wù)器的信息芥炭,返回內(nèi)容的信息
  3. http響應(yīng)體
    響應(yīng)體放置服務(wù)器返回給客戶端的數(shù)據(jù)漓库。
http響應(yīng)頭信息
查看http請(qǐng)求

那么如何在瀏覽器查看http請(qǐng)求呢?
其實(shí)也挺簡(jiǎn)單的园蝠,以chrome為例米苹。

  1. 打開(kāi)新標(biāo)簽頁(yè),然后按F12調(diào)出開(kāi)發(fā)者工具砰琢,工具面板切換到network
newwork面板一覽
  1. 在地址欄輸入http://www.baidu.com ,一個(gè)回車(chē)蘸嘶,然后就瀏覽器就會(huì)把請(qǐng)求的文件下載到本地
newword面板文件一覽

3.隨便點(diǎn)擊一個(gè)Name,就能看到關(guān)于這個(gè)文件的請(qǐng)求頭信息和響應(yīng)頭信息

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

總結(jié)
以上就是HTTP協(xié)議的基本知識(shí)陪汽,可以了解到HTTP請(qǐng)求的完整過(guò)程训唱,http請(qǐng)求和http響應(yīng)是怎么樣的,由哪些部分組成挚冤,GET請(qǐng)求方式和POST請(qǐng)求方式的區(qū)別况增,如何查看這些請(qǐng)求和響應(yīng)信息等,為我們使用學(xué)習(xí)AJax作了一個(gè)穩(wěn)固的鋪墊

                                                                        ——2015年2月24日23時(shí)40分
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末训挡,一起剝皮案震驚了整個(gè)濱河市澳骤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌澜薄,老刑警劉巖为肮,帶你破解...
    沈念sama閱讀 210,978評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異肤京,居然都是意外死亡颊艳,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)棋枕,“玉大人白修,你說(shuō)我怎么就攤上這事≈匕撸” “怎么了兵睛?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,623評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)窥浪。 經(jīng)常有香客問(wèn)我祖很,道長(zhǎng),這世上最難降的妖魔是什么寒矿? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,324評(píng)論 1 282
  • 正文 為了忘掉前任突琳,我火速辦了婚禮,結(jié)果婚禮上符相,老公的妹妹穿的比我還像新娘拆融。我一直安慰自己,他們只是感情好啊终,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布镜豹。 她就那樣靜靜地躺著,像睡著了一般蓝牲。 火紅的嫁衣襯著肌膚如雪趟脂。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,741評(píng)論 1 289
  • 那天例衍,我揣著相機(jī)與錄音昔期,去河邊找鬼。 笑死佛玄,一個(gè)胖子當(dāng)著我的面吹牛硼一,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播梦抢,決...
    沈念sama閱讀 38,892評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼般贼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了奥吩?” 一聲冷哼從身側(cè)響起哼蛆,我...
    開(kāi)封第一講書(shū)人閱讀 37,655評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎霞赫,沒(méi)想到半個(gè)月后腮介,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡绩脆,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年萤厅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了橄抹。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片靴迫。...
    茶點(diǎn)故事閱讀 38,569評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡惕味,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出玉锌,到底是詐尸還是另有隱情名挥,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評(píng)論 4 328
  • 正文 年R本政府宣布主守,位于F島的核電站禀倔,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏参淫。R本人自食惡果不足惜救湖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望涎才。 院中可真熱鬧鞋既,春花似錦、人聲如沸耍铜。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,725評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)棕兼。三九已至陡舅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間伴挚,已是汗流浹背靶衍。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,950評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留茎芋,地道東北人颅眶。 一個(gè)月前我還...
    沈念sama閱讀 46,260評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像败徊,于是被迫代替她去往敵國(guó)和親帚呼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理皱蹦,服務(wù)發(fā)現(xiàn)煤杀,斷路器,智...
    卡卡羅2017閱讀 134,628評(píng)論 18 139
  • API定義規(guī)范 本規(guī)范設(shè)計(jì)基于如下使用場(chǎng)景: 請(qǐng)求頻率不是非常高:如果產(chǎn)品的使用周期內(nèi)請(qǐng)求頻率非常高沪哺,建議使用雙通...
    有涯逐無(wú)涯閱讀 2,521評(píng)論 0 6
  • 一沈自、概念(載錄于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434閱讀 8,333評(píng)論 6 152
  • Http協(xié)議詳解 標(biāo)簽(空格分隔): Linux 聲明:本片文章非原創(chuàng),內(nèi)容來(lái)源于博客園作者M(jìn)IN飛翔的HTTP協(xié)...
    Sivin閱讀 5,210評(píng)論 3 82
  • 我搬過(guò)兩次家辜妓。 第一個(gè)家枯途,在一個(gè)鄉(xiāng)村學(xué)校里忌怎,那有高大的香樟樹(shù)、樹(shù)下的石椅酪夷、好大好大的水井榴啸、礦渣鋪出的校道、平房晚岭、平...
    莫云遐閱讀 270評(píng)論 0 0