Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

131
Vistas
¿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 Respuestas
Responde la pregunta

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 Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda