人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

ASP3.0中的流控制能力一[轉]

ASP3.0中的流控制能力一[轉]

更新時間:2021-03-06 文章作者:未知 信息來源:網絡 閱讀次數:

隨著PHP4.0和JSP技術的推出以及IIS中不斷出現的重大的安全問題,MicroSoft的ASP的市場仿佛是變的狹窄了,但是MicroSoft是不會輕言放棄的,于是在ASP2.0的基礎上推出了ASP3.0,增加了一些新的功能:新的流控制能力、Data Shaping技術(請參考:http://www.aspcn.com/showarticle.asp?id=28)、無腳本 ASP 、更多的組件選擇、xml的支持、腳本組件、ASP腳本代碼的加密技術等等。其實筆者認為沒有多大的改變、或者我對于ASP3.0了解的還是太少了(事實上我認為微軟可能放棄了ASP,而是把目光轉向了"ASP+",ASP+目前還處于測試階段,但是筆者從一些國外站點的介紹來看,嘿嘿,我們的下一個作用于Win平臺上的東西可能就是ASP+了,所以ASP3.0才沒有多大的改變),不過話說回來,對于那些使用Win系統平臺的用戶,我還是建議大家使用ASP,所以在下面給大家介紹了"ASP3.0中的流控制能力"。


  ASP3.0中的流控制技術其實是指程序流,說的通俗一點就是程序的流程,ASP3.0中有了兩種新的流控制方法:"Server.Transfer"和"Server.Execute",我將就這兩種方法中的一種粗略的介紹給大家,為了具體的顯示其功能,我給大家對比了Response.redirect同Server.Transfer的運用!
  一般會使用response.redirect這條語句進行地址轉向,ASP3.0提供了一種新的方法給我們,這種方法更加高效。讓我們先來看看response.redirect和Server.Transfer分別是如何Run的!

  response.redirect其實上是當服務器碰到這條語句時發送一條指令(包含新的地址)給瀏覽器,然后讓瀏覽器去發送http請求,請求response.redirect后面的那個新的http地址,流程如下:
  瀏覽器ASP文件請求->服務器執行->遇到response.redirect語句->服務器發送response.redirect后面的地址給客戶機端的瀏覽器->瀏覽器請求執行新的地址(服務器返回的Response.Redirect后面的地址)這就是一個小小的Response.Redirect的全部過程,不看不知道,一看嚇一條!它有這么多的過程,真恐怖... ...,而ASP3.0中的Server.Transfer語句當接受地址后是直接轉向后面的地址,流程如下:
  瀏覽器ASP文件請求->服務器執行->遇到Server.Transfer語句->服務器轉向新的文件。
  這樣就少了一個流程了!也縮短了服務器->客戶機->服務器互相訪問的時間!但是值得提醒你注意的一點的是Server.transfer中帶的地址最好是html文件或asp文件,不要是第三方加載的東西,比如說PHP,如果那樣的話,程序是不能正常執行的,因為轉向的文件被直接送給ASP的引擎解析了(唉,微軟的東西教人如何說呢?不知道這點是沒有考慮到,還是微軟的霸氣),你將得不到結果的!在下面的程序中,我們將像你展示這點
讓我們看看下面的代碼:
(文件:Response.asp:)
<!-- 代碼開始 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="蒲俊杰">
<META NAME="Keywords" CONTENT="ASP,www.aspcn.com">
<title>Response測試</title>
</head>
<body>
<%Response.Redirect "test.php"%>
</body>
</html>
<!-- 代碼結束-->
test.php文件的代碼如下:
<!-- 代碼開始 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="蒲俊杰">
<META NAME="Keywords" CONTENT="ASP,PHP,www.aspcn.com">
<title>Response測試</title>
</head>
<body>
<? echo "<center>這是一個測試,你好呀!歡迎你訪問我們的網站<a href=http://www.aspcn.com>www.aspcn.com</a></center>" ; ?>
</body>
</html>
<!-- 代碼結束-->
  好了,我們測試一下上面的代碼,看到結果了嗎?再讓我們來看看Server.Transfer的運用語句,代碼如下:
Server.asp(其實直接套用Response.asp就可以了):
<!-- 代碼開始 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="蒲俊杰">
<META NAME="Keywords" CONTENT="ASP,www.aspcn.com">
<title>Response測試</title>
</head>
<body>
<%Server.Transfer "test.php"%><!-- 注意這條語句 -->
</body>
</html>
<!-- 代碼結束-->
  執行一下Server.asp!咦,怪了,什么都沒有嗎!但是你看看被IE解釋后的代碼,代碼如下(注意千萬不要被我下面的使用在html中的注釋語句搞糊涂了):
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="蒲俊杰">
<META NAME="Keywords" CONTENT="ASP,www.aspcn.com">
<title>Response測試</title>
</head>
<body>
<!-- 代碼開始 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="蒲俊杰">
<META NAME="Keywords" CONTENT="ASP,www.aspcn.com">
<title>Response測試</title>
</head>
<body>
<? echo "<center>這是一個測試,你好呀!歡迎你訪問我們的網站<a href=http://www.aspcn.com>www.aspcn.com</a></center>" ; ?><!-- 注意這條PHP語句被看到了 -->
</body>
</html>
<!-- 代碼結束--><!-- 注意這條語句 -->
</body>
</html>
"###################################################(代碼結束)
  test.php文件被當作一個文本文件include進來了,但是如果我們把原來的Server.asp文件中的Server.Transfer "test.php"換成 Server.Transfer "Response.asp"在Try一下(這樣做,其實是讓你了解ASP的引擎對于Server.Transfer的具體的解析情況),看看結果?是不是同我們直接運行Response.asp的結果一樣???
  我不知道,你現在對于Server.Transfer的用法糊涂沒有?我都有一點糊涂了!但是不要忘了我寫這篇東西的關鍵:Server.Transfer比Response.Redirect好,因為前者少了一個流程,加快了速度的,節約了時間,后者我就不說了,只是提醒你一點的就是Server.Transfer到底該用在什么條件下(前面很清楚了,我不多說了,再說我也就糊涂了,你多Try幾下就明白了)!
 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 文水县| 晴隆县| 白山市| 肥乡县| 神农架林区| 肃北| 长葛市| 潢川县| 牙克石市| 顺义区| 读书| 甘南县| 通海县| 察隅县| 新昌县| 涞源县| 沙河市| 六安市| 昌邑市| 阿拉善盟| 邢台市| 阿鲁科尔沁旗| 德惠市| 丰镇市| 龙江县| 自贡市| 灵璧县| 万盛区| 水城县| 鄱阳县| 容城县| 宁波市| 六安市| 惠来县| 玉树县| 华宁县| 屏山县| 佛学| 清远市| 盐边县| 黑河市|