明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

淺談ASP中Web頁面間的數(shù)據(jù)傳遞

[摘要]【簡 介】  基于Web的動態(tài)網頁設計必會涉及到頁面間的數(shù)據(jù)傳遞,文章探討了ASP設計中常用的Web頁面間的數(shù)據(jù)傳遞方式,分析各種數(shù)據(jù)傳遞方式的使用方法、使用場合及優(yōu)缺點,其都是設計階段選擇數(shù)據(jù)傳遞方式考慮的關鍵 往往使用動態(tài)網頁技術制作ASP應用程序時一般至少擁有二個或二個以上的Web頁面,這時...
  【簡 介】
  基于Web的動態(tài)網頁設計必會涉及到頁面間的數(shù)據(jù)傳遞,文章探討了ASP設計中常用的Web頁面間的數(shù)據(jù)傳遞方式,分析各種數(shù)據(jù)傳遞方式的使用方法、使用場合及優(yōu)缺點,其都是設計階段選擇數(shù)據(jù)傳遞方式考慮的關鍵

往往使用動態(tài)網頁技術制作ASP應用程序時一般至少擁有二個或二個以上的Web頁面,這時就得考慮在多個Web頁面間傳遞數(shù)據(jù)的處理工作。而ASP應用程序的各個頁面類似于Windows應用程序的Form窗體,Windows應用程序各Form間數(shù)據(jù)傳遞可以通過定義全局變量等方法來實現(xiàn)。網頁間的數(shù)據(jù)傳遞有多種不同的可使用方式,而Web頁面間的數(shù)據(jù)傳遞方式選擇是否恰當對系統(tǒng)設計及運行的合理性與安全性起到舉足輕重的作用。

  1、Url方式

  Url方式是實現(xiàn)Web間數(shù)據(jù)傳遞最基本的方法,操作簡單,可很方便地實現(xiàn)不同Web頁面間的數(shù)據(jù)傳遞,但其安全性比較差。將要傳遞的數(shù)據(jù)附加在網頁地址(Url)后面進行傳遞。如:Http://Www.Dicky.Com/Test.Asp?UserName=Dicky,其中?后面所跟著的字符串便是傳遞的數(shù)據(jù),=前的是變量名,=后面是數(shù)值,可以使用Request對象來獲取傳遞的數(shù)據(jù)。如:Request("UserName")。這種方法在傳遞數(shù)據(jù)過程中其數(shù)據(jù)內容在Url欄中是顯示的,用戶能看到提交的內容。

  2、Form方式

  通過在網頁上制作表單交互區(qū)域,用戶在瀏覽器端輸入數(shù)據(jù),然后通過Form提交到服務器,在提交后的接受Form數(shù)據(jù)的頁面里就可以接收到相應數(shù)據(jù),即Form的Action頁面中可以使用Request對象來接收所傳遞的數(shù)據(jù)。

  如:

  發(fā)送頁面:

  <Form Name="Formtest" Action="Targetweb.Asp">
   <Input Name="Testtext" Type="Text" value="">
  <Input Name="Testbutton" Type="Submit" Value="提交">
  </Form>

  接收頁面:Request("Testtext")

  利用Form頁面的文本框來接收用戶數(shù)據(jù)的輸入,通過submit按鈕提交后在targetweb頁面中使用Request來接收數(shù)據(jù)。

  3、Cookie方式

  Cookie是在瀏覽頁面時web服務器在瀏覽器端所寫入的一些小文件,Cookie是存放在瀏覽器端本機磁盤上,而不是存放在服務端的?梢栽诎l(fā)送數(shù)據(jù)時寫入Cookie,接收時讀取Cookie完成數(shù)據(jù)在web頁面間的傳送。

  如:

  發(fā)送頁面:Response.Cookies("CookieName")("Username") = "Dicky"

  接收頁面:Request.Cookie("CookieName")("Username")

  在發(fā)送頁面中對Cookie變量賦值,接收頁面中取Cookie變量的值就是所傳遞的數(shù)據(jù)。

  4、Application對象

  Application對象是用來記錄整個網站信息的,是記錄不同瀏覽器端共享的變量,無論有幾個瀏覽者同時存取網頁,都只會產生一個 Application對象實例。用戶可以通過定義Application整站共享變量來實現(xiàn)網頁間的數(shù)據(jù)傳遞。其定義方法是:Application ("變量名")=數(shù)值

  如:Application("UserName") = Dicky

  application對象所定義的變量對于所有瀏覽端都是可見的,所以其使用場合是所有瀏覽端共享的全局數(shù)據(jù)傳遞。

  5、Session對象

  Session對象是用來記錄瀏覽器端的變量,是個別瀏覽器端專用的變量,對于每一個瀏覽器訪問時都會自動產生一個Seseion對象,該對象提供一個存儲場所,用來存儲僅僅對該訪問者在會話的活動期間打開的網頁可用的變量和對象。這樣就用可以用來在Web間傳遞專對單個瀏覽器端使用的數(shù)據(jù)。其定義方法:Session("變量名")=數(shù)值

  如:Session("UserName") = Dicky

  Session對象所定義的變量只是瀏覽器端的專用變量,所以適用于局部會話間的網頁數(shù)據(jù)傳遞。

  6、結束語

  上述介紹的是網頁間數(shù)據(jù)傳遞的常用方法,各有千秋。其中Url方式和Form方式實現(xiàn)方法簡單,可實現(xiàn)網頁間的簡單數(shù)據(jù)傳遞,一般為字符串類型,其特點是安全性差,而且必須是連續(xù)訪問兩頁面間數(shù)據(jù)傳遞。Cookie只能存放String類型的數(shù)據(jù),如果想要存放更為復雜的數(shù)據(jù)類型,那么必須先將其轉換為 String類型。Application對象和Session對象操作相對復雜些,瀏覽量非常大的網頁使用時應適量,而且使用結束后盡量清除,否則大量使用有可能會導致服務器的癱瘓。Session變量的安全性較高,可傳遞專用瀏覽端數(shù)據(jù)。具體應用決定了數(shù)據(jù)傳遞方式的選擇,合理數(shù)據(jù)傳遞方式選擇是 Web頁面的設計中的關鍵考慮因素。