簡體   English   中英

上傳到服務器后如何讀取文件

[英]How to read file after uploading to server

我已經設置了一些HTML來接收文件,並將該文件發送到服務器。 但是,我不希望數據在服務器上,而是在客戶端上。 如何在仍然能夠讀取數據的同時將數據發送回客戶端? 這必須與IE8或至少與IE9兼容。 我在客戶端使用Javascript和KnockoutJS,在服務器端使用C#/ asp.net MVC。

這就是我將文件發送到服務器的方式。 既然這是POST方法,我是否應該能夠返回某些內容? 也許我不明白應該如何使用它。

@using (Html.BeginForm("loadReport", "home", FormMethod.Post, new {enctype="multipart/form-data"})){ 

 <input type="file" name="FileUpload1" /><br />
 <input type="submit" name="Submit" id="Submit" value="Upload" />}


    public ActionResult loadReport()
    {
        foreach (string upload in Request.Files)
        {
            //     if (!Request.Files[upload].HasFile()) continue;
            string path = AppDomain.CurrentDomain.BaseDirectory;
            string filename = Path.GetFileName(Request.Files[upload].FileName);
            Request.Files[upload].SaveAs(Path.Combine(path, filename));
            System.Diagnostics.Debug.WriteLine(Path.GetFileName(Request.Files[upload].FileName));
        }
        return this.Json(new { });
    }

這兩個部分實質上是我在博客上找到的有關如何上傳到服務器的部分。 他們沒有返回JSON文件,而是返回了一個視圖。 我試圖通過此方法檢查它的功能,但是它向我的JavaScript返回了一個新頁面,而不是一個json文件。

當您將文件上傳到服務器時,它會保留在服務器上; 您不能通過客戶端閱讀它,除非
1.)呈現頁面時,在服務器端讀取並顯示文件的內容。
2.)使用AJAX來獲取文件的內容; 然后,使用JavaScript操縱結果。

因此,保存文件; 然后,使用AJAX檢索其內容或刷新頁面並將文件的內容寫入呈現頁面。

希望這種解釋是清楚的,對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM