Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

124
Views
¿Cómo puedo enviar un archivo y una cadena a mi backend C# desde JQuery Ajax?

Mi interfaz de usuario tiene una entrada para cargar el archivo y una entrada para el nombre del archivo.

Quiero obtener tanto el archivo como su nombre del usuario en la misma solicitud de ajax y cargar el archivo con el nombre obtenido en mi servidor.

la pregunta es ¿cómo puedo obtener el archivo (binario) y el nombre del archivo del usuario en la misma solicitud?

aquí está mi intento pero da como resultado un error 400.

Función en C#:

 public IActionResult UploadImage(IFormFile upload, string fileWithName) { //some code here }

y aquí está mi ajax:

 $("#startUploading").on("click",function() { var fileInput = $.trim($("#myfile").val()); var formData = new FormData(); formData.append('upload', $('#myfile')[0].files[0]); formData.append('pathWithName', $("#fileAddressUploadTo").val()); $.ajax({ url: apiUrl+'/api/V1/Servers/UploadImage', type: 'POST', data: formData, beforeSend: function (xhr) { xhr.setRequestHeader("Authorization", 'Bearer ' + localStorage.getItem('token')); }, cache: false, processData: false, contentType: false }); });
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

El error 400 significa una solicitud incorrecta, pero según mi prueba, descubrí que funcionó para mí. Entonces, me temo que el problema en su código puede estar relacionado con $('#myfile')[0].files[0] , vea mi código a continuación

 <div> <input type="file" id="uploadFile" /> <button id="btn4">upload</button> </div> $("#btn4").click(function(){ var form = new FormData(); var temp = $('#uploadFile').prop('files'); form.append("file",temp[0]); form.append("name","myFile"); console.log(form); $.ajax({ url: 'https://localhost:44321/hello/upload', type: 'POST', data: form, cache:false, contentType:false,//stop jquery auto convert form type to default x-www-form-urlencoded processData:false, success: function (d) { alert(d) } }); }); public string upload(IFormFile file, string name) { return "hello"; }

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!