我有一個客戶端應用程序,它向asp.net URL
發送POST
請求(它用於將文件上傳到.NET
)。如何在.NET中將POST請求內容保存爲文件
如何使asp.net頁面收到這個請求並將其保存爲一個文件?
@ Darin Dimitrov 我試過了你的代碼,但是我得到了500 internal server error
我該如何跟蹤它?!
我有一個客戶端應用程序,它向asp.net URL
發送POST
請求(它用於將文件上傳到.NET
)。如何在.NET中將POST請求內容保存爲文件
如何使asp.net頁面收到這個請求並將其保存爲一個文件?
@ Darin Dimitrov 我試過了你的代碼,但是我得到了500 internal server error
我該如何跟蹤它?!
如果客戶端使用multipart/form-data
請求編碼(這是上傳文件的標準),您可以從Request.Files
集合中檢索上傳的文件。例如:
protected void Page_Load(object sender, EventArgs e)
{
foreach (HttpPostedFile file in Request.Files)
{
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
file.SaveAs(path);
}
}
,或者如果您知道客戶端所使用的名稱,你可以直接訪問它:
HttpPostedFile file = Request.Files["file"];
如果在另一方面,客戶端不使用標準的編碼要求您可能需要從Request.InputStream
讀取文件。
可以請給我一個完整的例子,我不是.NET專家。我已經完成了與Android客戶端,並希望使服務器端組件? – Adham 2013-02-25 16:52:52
當然,我已經用一個例子更新了我的答案。 – 2013-02-25 16:54:35
謝謝先生,這是否適合作爲客戶端?http://stackoverflow.com/questions/1067655/how-to-upload-a-file-using-java-httpclient-library-working-with-php-奇怪的pr/1068132#1068132 – Adham 2013-02-25 17:08:56
您還可以保存使用
HttpContext.Current.Request.SaveAs(filename,includeHeaders)
假設數據沒有被上傳的多/ form-data的
tnx,我用Simple-Ajax-Uploader在mvc或webforms上傳時使用這段代碼。 https://github.com/LPology/Simple-Ajax-Uploader – 2015-09-07 08:14:50
我認爲這是一個有效的問題整個請求。如果你正在做一個IFRAME帖子來上傳IE <= 9的文件,看起來像AJAX,那麼你需要創建一個帶有文件的html表單,並將其發佈到.NET頁面。這正是我想要做的。那麼問題是,ASPX頁面如何從發佈的數據中提取文件。這就是問題所在。 – Sean 2014-07-30 21:10:36
我同意@Sean ...這是一個有效的問題...不知道它爲什麼被關閉。 – FastTrack 2014-11-19 16:49:36
我注意到,有時問題已經關閉,因爲它們沒有用最好的英語寫成。這是一個絕對愚蠢的理由來結束一個問題。如果問題的內容是合法的,那麼其他問題應該如何處理? – 2017-10-25 18:33:42