自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Asp.Net編程實現下載

開發(fā) 后端
本文介紹Asp.Net編程實現下載,完全用Asp.net在服務器上主觀要求客戶端“下載”,是很難以實現的。

Asp.Net編程

經常在論壇看見有人求Asp.Net編程實現下載的代碼,有些還希望能斷點續(xù)傳什么的。其實問題的關鍵在于權限。B/S和C/S不僅僅是外觀上的區(qū)別而已。

下載,顧名思義是客戶端要下,所以載。你硬塞給人家那不叫下載,那其實是“從服務器‘上傳’到客戶端”。

有些人的想法是向客戶端“寫一個”你打算他下載的“文件”,在C/S結構中是沒有問題的,因為C端來寫。但是在Asp.net卻是不行的,一定會彈出權限的錯誤,因為B/S結構中沒有個C端給你,S端是不可能獲得客戶機硬盤的寫權限的,要不還不是世界大亂了?

上傳和下載的根本區(qū)別在于一個是“本地主動送”,一個是“本地主動收”。他們都需要有一方來“主動”,上傳需要對遠程有寫權限,下載需要對遠程有讀權限?,F在的情況是服務器根本對客戶端沒有讀寫權限,所以實際上在B/S里寫這種代碼沒有

換個思路,我不要服務器主動,我讓客戶端主動可以嗎?

1、IE的下載功能。包括Http協議中規(guī)定的下載(對IE本身無法打開的連接文件類型會提示用戶是否下載)這是最方便的,你只要給個超級連接就行了,一點代碼都不用。局限性在于只對“當前IE無法打開的文件類型”有效。這就是為什么同個東西有些人點了打開瀏覽,有些人是提示下載,就是瀏覽器不同(包括組件、版本等)。
2、javascript主動向服務器請求文件,并由js向硬盤上寫。(本人沒嘗試過,所以到底可行與否不知道)
3、由瀏覽器以外的客戶端程序來執(zhí)行寫操作。C/S版因為有客戶端,簡單的和什么一樣。。。B/S版里有什么是“瀏覽器以外的客戶端程序”而又是你可以訪問的??沒錯,木馬!放個木馬絕對沒問題(廢話。。)至于怎么放那就是另一方面的事情了。。。
4、讓客戶端以為這是IE的插件(這也許是,也許不是,不是你就要偽裝來騙它),這是3721等喜歡使用的方法。局限性在于和瀏覽器的設置有關,如果設置關掉相應的自動選項,你急也沒辦法!

所以,完全用Asp.net在服務器上主觀要求客戶端“下載”,是很難以實現的。需要配合其他手段,以上介紹Asp.Net編程。

【編輯推薦】

  1. 淺談ASP.NET MVC框架
  2. 介紹ASP.NET MVC中的MvcAjaxPanel
  3. ASP.NET MVC框架拯救UpdatePanel
  4. 用ASP.NET MVC源代碼尋找解決方案
  5. ASP.NET MVC框架的ActionInvoker
責任編輯:佚名 來源: IT168
相關推薦

2009-08-03 17:35:07

ASP.NET WebASP.NET編程工具

2009-08-03 13:38:18

ASP.NET編程模型

2009-07-24 15:41:00

ASP.NET編程入門

2009-07-24 18:02:46

ASP.NET編程

2009-07-31 13:24:43

ASP.NET AJA

2009-08-10 15:42:33

ASP.NET Che

2009-08-10 16:07:44

ASP.NET Lin

2009-08-03 14:18:40

ASP.NET編程模型ASP.NET頁面生命

2009-07-22 17:45:35

ASP.NET教程

2009-08-03 14:22:33

什么是ASP.NET

2009-07-28 17:17:19

ASP.NET概述

2009-07-27 14:29:31

ASP.NET編程彈窗報警提示

2015-03-03 13:15:19

ASP.NET大文件下載實現思路

2009-08-03 12:40:46

ASP.NET編程模型

2009-08-03 13:12:34

ASP.NET編程模型

2009-07-24 10:41:00

ASP.NET Ses

2009-02-23 15:20:03

SQL Server數據庫ASP.NET

2009-07-27 13:34:15

ASP.NET編程

2009-07-31 11:45:42

ASP.NET文件下載

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入門教程
點贊
收藏

51CTO技術棧公眾號