2012年4月25日 天氣陰 有時候,在編程時遇到一個感興趣的問題時,時間嘩的一下就過了,呵呵,11點半了,寫篇博客,總結一下自己的學習到的東西,然後睡覺。
asp.net 基礎學習,其實我以前和朋友寫過一個asp.net網站,但對於學.net來說,一直挺鬱悶的,不懂原理,完全不懂怎麼來的,拖拖控件,網站還是出來了。但想轉向java。最近下了傳智博客的一些視頻,覺得挺好,講的很透徹(不是在打小廣告),學習的朋友,可以去看看。
1、我們是怎樣看到網站的?
用戶在瀏覽器地址欄輸入網址:www.baidu.com,瀏覽器先看當前電腦上是否保存了www.baidu.com對應的服務器IP地址;如果有,就直接請求;
如果沒有,則先到DNS服務器查詢,DNS返回查詢到的IP地址給瀏覽器,瀏覽器在本機保存,併發送請求到對應的IP地址。
服務器接受到請求,處理並返回數據給瀏覽器。
2、靜態頁面與動態頁面的區別?
靜態頁面:在服務器就相當於直接讀取文件字符串然後返回客戶端瀏覽器;(任何時候訪問看到的都是一樣的界面。)
動態頁面:在服務器是先交給某語言環境虛擬機編譯運行,按照語法生成代碼返回客戶端瀏覽器。(不同條件和時候訪問看到的都界面也不同。)
3、什麼是asp.net?
在aspx頁面中可以使用服務端控件,簡化開發。但瀏覽器只認html,因此在包含服務端控件的頁面被請求時,頁面中的服務器端控件會組裝成對應的HTML控件代碼字符串,如:TextBox→<inputtype=“text”/>。
一個很重要的工具,"Reflector 7" 可以稱爲。net的神器。把一個網站發佈後,用此工具查看,可以看他的過程。因爲.net封裝了太多東西。在源代碼中很多是看不到的。像拖的控件的定義,委託事件綁定啊。
4、瀏覽器與服務器的一般交互過程。
(1).用戶在瀏覽器地址欄輸入:http://localhost:80777/FirstShower.ashx
(2).服務器接收到用戶的請求,發現是請求.ashx文件,便將請求交給framework執行,fw找到對應的文件FirstShower.ashx,執行後將生成的字符串(通常是html+css+javascript格式)返回給瀏覽器。如果是html文件,就在虛擬路徑中找到所請求的文件,返回給瀏覽器。
(3).瀏覽器接收到服務器返回的數據,並按照語法解釋執行,以界面的方式展示給用戶看到。(如果是圖片或其他的外部文件,由瀏覽器後部請求,服務器返回數據)
5、瀏覽器與服務器一般交互過程2.
原理:他們是通過什麼交互的呢?soket(套接字)因爲瀏覽器與服務器已封裝好連接,所以不會用到。請求->響應->請求。B/S模式
長連接:客戶端發送請求 與服務器建立連接 得到數據後 並不馬上關閉 而是通過計時 看是否還有請求 計時過後 再關閉
短連接:客戶端發送請求與服務器建立連接 得到數據後 馬上關閉
6、HTTP請求詳解圖
7、什麼是刷新?
重複瀏覽器上一次請求 如果上一次是提交表單 瀏覽器會提示你是否重複提交