2014-05-16 10 views
5

मैं एक दूरस्थ सर्वर पर अपलोड करने की कोशिश कर रहा हूं। मैं नीचे दिए गए कोड के साथ कोई फ़ाइल चुनें और अपलोड फ़ाइल अपलोड होने के लिए क्लिक करें, लेकिन एक त्रुटि रिटर्न कहने के बाद कोड: "-200" संदेश: "HTTP त्रुटि"प्लुपलोड त्रुटि -200 HTTP त्रुटि

 var uploader = new plupload.Uploader(
     { 
      runtimes : 'html4, html5, flash, silverlight', 
      browse_button : 'bt_browse', 
      container: document.getElementById('container'), 
      url : 'http://remote.com/upload.php', 
      silverlight_xap_url : 'js/Moxie.xap', 
      chunks_size: '20mb', 
      max_retries: 3, 
      filters : { 
      max_file_size : '100mb' 
     }, 
     multi_selection : true, 
     init: { 
     PostInit: function() { 
       document.getElementById('filelist').innerHTML = ''; 
       document.getElementById('bt_uploadfiles').onclick = function() { 
        uploader.start(); 
        return false; 
       }; 
     }, 
     FilesAdded: function(up, files) { 
      plupload.each(files, function(file) { 
        //build list 
    }}, 
     UploadProgress: function(up, file) { 
     $("#progressBar"+file.id).val(Math.round(file.percent)); 
      if(Math.round(file.percent)==100){ 
       $("#progressBar"+file.id).hide(); 
       $("#deleteFile" + file.id).hide(); 
      } 
     }, 
     FileUploaded: function(up, file, info) { 
      if(file!=undefined) { 
       var json = $.parseJSON(info.response); 
       if(json.error == undefined) 
        moveFile(json.result, file.name, file.id); 
      } 
     }, 
     UploadComplete: function(){ 
     }, 
     Error: function(up, err) { 
     } 
     } 
    }); 

क्या मैं इस त्रुटि से बचने के लिए क्या कर सकते हैं और जारी रहना? मेरे मामले में FileUploaded और अपलोड प्रोग्रेस बिल्कुल हिट नहीं होते हैं - अपलोड करने के बाद मैं सीधे त्रुटि फ़ंक्शन में स्थानांतरित हो जाता हूं। यह मेरे लिए वास्तव में अजीब है क्योंकि उसके बाद मैं उस फ़ोल्डर को चेक करता हूं जहां यह होना चाहिए और फ़ाइल वहां है।

किसी भी मदद की बहुत सराहना की जाएगी।

+0

में कोई समाधान मिला है। मुझे भी एक ही समस्या का सामना करना पड़ रहा है। कुछ फाइलें अपलोड की गई हैं और कुछ के लिए आकार के बावजूद सीमा में, 'HTTP त्रुटि' प्राप्त होती है। (-200) '। –

+0

मुझे यह त्रुटि भी मिल रही है। नीचे 3 एमबी काम के नीचे फ़ाइलें ठीक है और ऊपर नहीं है, भले ही अधिकतम फ़ाइल-आकार 6 एमबी पर सेट हो – dunxz

उत्तर

0

मैं एक ही त्रुटि में आया जब मैं एक एमवीसी 5 अनुप्रयोग में PlUpload का उपयोग कर रहा था। समस्या यह थी कि आरईएसटी विधि नहीं मिली। डेटा के लिए एक मल्टीपार्ट का उपयोग करके PlUpload। नीचे दिया गया कोड दिखाता है कि इसे वेबएपीआई

public class UploadFilesController : ApiController 
{ 

    [HttpPost] 
    [Route("UploadFiles")] 
    public async Task<HttpResponseMessage> PostFormData() 
    { 
     // Check if the request contains multipart/form-data. 
     if (!Request.Content.IsMimeMultipartContent()) 
     { 
      throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); 
     } 

     string root = HttpContext.Current.Server.MapPath("~/App_Data"); 
     var provider = new MultipartFormDataStreamProvider(root); 

     try 
     { 
      // Read the form data. 
      await Request.Content.ReadAsMultipartAsync(provider); 
      var TestId = provider.FormData.Get("TestId"); 
      var chunk = provider.FormData.Get("chunk"); 
      var chunks = provider.FormData.Get("chunks"); 
      var fileName = provider.FormData.Get("name"); 

      int chunkId = Convert.ToInt32(chunk); 
      int totalChunks = Convert.ToInt32(chunks); 
      Boolean isLastChunch = chunkId == totalChunks - 1; 


      foreach (MultipartFileData file in provider.FileData) 
      { 
       //Console.WriteLine(file.Headers.ContentDisposition.FileName); 
       //Console.WriteLine("Server file path: " + file.LocalFileName); 
       string FileDestination = Path.GetDirectoryName(file.LocalFileName) + @"\" + fileName; 

       using (FileStream fileUpload = new FileStream(file.LocalFileName, FileMode.Open)) 
       { 
        using (var fs = new FileStream(FileDestination, chunkId == 0 ? FileMode.Create : FileMode.Append)) 
        { 
         var buffer = new byte[fileUpload.Length]; 
         fileUpload.Read(buffer, 0, buffer.Length); 
         fs.Write(buffer, 0, buffer.Length); 
        } 
       } 
       File.Delete(file.LocalFileName); 
      } 

      if (isLastChunch) { 
       // Do something with the completed file 
      } 

      return Request.CreateResponse(HttpStatusCode.OK); 
     } 
     catch (System.Exception e) 
     { 
      return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e); 
     } 

    } 
संबंधित मुद्दे