получение дубликатов данных из файла Ashx - PullRequest
0 голосов
/ 12 июня 2018

Я использую команду post для загрузки файла из функции JavaScript.Мне нужно передать дополнительный параметр вместе с загрузкой файла:

         function handleFileSelect(evt) {
         var memberID = '12222';
         var input = document.getElementById('input-file').files[0];
         var formData = new FormData();
         formData.append('file[]', input);
         formData.append('memberid', memberID);     
         $.ajax({
             url: 'FileUploadHandler.ashx',
             type: "POST",
             data: formData,
             processData: false,
             contentType: false,
             success: function (data) {

Когда я прошу вернуть memberID (для тестирования), он возвращается с 12222,2514.2514 - это переменная, установленная для memberID, поэтому повторяющиеся данные возвращаются.На этот раз я добавил еще одно имя пользователя, и оно добавляется дважды с запятой, разделяющей их.Как и Боб, Боб

код Ashx:

          Public Class FileUploadHandler Implements System.Web.IHttpHandler

Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
              If context.Request.Files.Count > 0 Then
            Dim pathrefer As String = context.Request.UrlReferrer.ToString()
            Dim Serverpath As String = HttpContext.Current.Server.MapPath("Upload_Bio_Files")

            Dim postedFile = context.Request.Files(0)
            Dim memberID As String = HttpContext.Current.Request.Params("memberid")
            context.Response.Write(memberID)

Я изменил часть кода на странице Ashx, чтобы разделить параметр и принять первое значение, но я чувствую, что это толькоОбходной путь и должен быть лучший способ.

1 Ответ

0 голосов
/ 13 июня 2018

Вот мое решение;

Если я установлю параметры, отличные от имен моих переменных, они будут работать нормально.Я установил их на param1 и param2, и они не дублируют значения

         var memberID = '12222';
         var username = 'Robert';
         var input = document.getElementById('input-file').files[0];
         var formData = new FormData();
         formData.append('file[]', input);
         formData.append('param1', memberID);     
         formData.append('param2', username);  

и на стороне пепла:

          Dim param1 = context.Request.Params("param1")
          Dim param2 As String = context.Request.Params("param2") 
...