• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    web掃盲專題之入門概念

    發布: 2007-5-05 18:35 | 作者: 網絡轉載 | 來源: 轉載 | 查看: 83次 | 進入軟件測試論壇討論

    領測軟件測試網 . http協議

    除了TCP/IP協議,http可以說是最重要,且使用最多的網絡協議了。本節簡要介紹一下http協議的工作原理。

    假設現在有一個html文件:http.html, 存放在Web服務器上,其URL為www.myweb.com/http.html ,文件內容為:
    HTML 代碼:
    <html>
    <head>
    <title>http.html</title>
    </head>
    <body>
    hello, http
    </body>
    </html>

    現在,一個用戶通過IE訪問該地址,IE首先將此地址的域名通過DNS轉換為一個IP地址,然后通過一個Web服務器開放的端口(默認為80,不為80需在域名后加上“:端口號”,例如www.myweb.com:81)與其連接, 然后傳送一個類似這樣的http請求(使用flashget等下載軟件下載文件時,在詳細信息里也可以看到類似的信息):

    GET /http.html HTTP/1.1
    Host: www.myweb.com
    Accept: */*
    User-Agent: Mozilla/4.0 (compatible; MSIE.6.0; Windows NT 5.1)
    Pragma: no-cache
    Cache-Control: no-cache
    Connection: close
    [空行]

    請求的第一行為請求內容, 表示通過GET方法向服務器請求資源,/http.html為請求資源名稱,HTTP/1.1 表示使用http協議,版本1.1。然后接下來的幾行稱為請求信息的標頭(header),其中描述了請求的一些其他信息,比如客戶端瀏覽器標識等。最后一個空行表示請求結束。

    當Web服務器接收到該請求時,服務器檢查所請求的資源是否有效,且是否有相應的權限。如果沒有問題,則服務器會傳回類似如下的http響應信息:

    HTTP/1.1 200 OK
    Server: Microsoft-IIS/5.0
    Date: Thursday, March 31, 2005 17:15:23 GMT
    Content-Type: text/html
    Content-Length: 88
    [空行]
    <html>
    <head>
    <title>http.html</title>
    </head>
    <body>
    hello, http
    </body>
    </html>

    其中第一行的“200”是一個狀態碼,表示服務器成功完成該請求,如果不成功會返回其他狀態碼。Content-Type表示返回的數據類型,Content-Length表示返回的數據長度?招斜硎緲祟^結束,下面則是瀏覽器根據請求返回的數據內容,這里是http.html的文件內容,瀏覽器解析html源代碼,將Web頁面呈現給用戶,到這里就完成了一次成功的http通信。

    以上內容是Web通信的基礎,就和Windows消息機制一樣,你可能不會用到它,但是你必須了解它,你得知道那些高級的東西隱藏了哪些低級的內容,這樣對你理解和使用那些高級的東西都有非常大的幫助:)。

    2. html form

    前面的http.html文件是一個最簡單的靜態html頁面,但作為一個Web程序,它實在是太簡陋了,它不接受用戶輸入,永遠顯示一樣的內容。我們需要能夠根據用戶輸入來返回相應的數據。

    看下面的html代碼:
    <html>
    <head>
    <title>form.html</title>
    </head>
    <body>
         <form method=”get”>
               <input type=”text” name=”p” />
               <input type=”submit” value=”submit” />
         </form>
    </body>
    </html>

    觀察這段代碼,其中有一個html form,其內容包括在<form>和</form>之間, 其中有一個提交按鈕(<input type=”submit” value=”submit” />),當用戶點擊該按鈕時,瀏覽器將html form中的所有輸入提交給Web服務器,form標簽的method屬性指定了提交的方式,這里為get,這個get對應http請求中的GET請求方法,form中的輸入均以查詢字符串的方式附加在URL上, 在文本框里輸入一個字符串,比如“form”,然后觀察瀏覽器的地址欄,會變成類似 http://www.myweb.com/form.html?p=form ,這是因為瀏覽器發出了這樣的GET請求:

    GET /form.html?p=form HTTP/1.1
    ...
    ...
    [空行]

    假如<form>標簽的method屬性為”post”,即令瀏覽器使用post方法發送該請求,當使用post方法時,用戶的輸入并不是通過URL來傳輸的,而是瀏覽器將內容放在POST請求的標頭之后發送給Web服務器的:
    POST /form.html HTTP/1.1
    ...
    ...
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 6
    [空行]
    p=form

    瀏覽器將用戶輸入使用GET或者POST方法發送給Web服務器,這個過程稱為“回發(Postback)”。這個概念相當重要,在Web應用程序中經常涉及到回發。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: web測試


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>