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

418
Views
Cargar archivo desde Angular Client a Spring Rest

Estoy tratando de cargar un archivo con Angular y enviarlo a mi backend Spring. Para mi servicio angular, utilicé la configuración aquí . Pero tengo 2 problemas:

El primero: cuando envío un archivo zip grande: tengo este error en mi navegador: net::ERR_CONNECTION_RESET ; parece que Angular no puede enviar el archivo al resto del cliente.

El segundo: cuando mi archivo zip no es demasiado grande, se omite el primer error, pero esta vez, tengo este error devuelto por el resto de la API: 415 (Type de Support Non Supporté) .

servicio angular

 deployement(file: File): void { console.log("service angular"); let formData:FormData = new FormData(); formData.append('uploadFile', file, file.name); let headers = new Headers(); headers.append('Content-Type', 'multipart/form-data') headers.append('Accept', 'application/json'); let options = new RequestOptions({ headers: headers }); this.http.post(URL_API_REST + 'upload', formData, options) .map(res => res.json()) .catch(error => Observable.throw(error)) .subscribe( data => console.log('success'), error => console.log(error) ) }

mi descanso primaveral

 @RequestMapping(value = "upload", headers = ("content-type=mulitpart/*"), method = RequestMethod.POST) @ResponseBody public HashMap<String, String> uploaderDeploiement(@RequestBody MultipartFile fichierZip){ //java code here }

¿Alguien podría señalar lo que estoy haciendo mal?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Creo que @RequestBody está mal para cargar archivos.

Tratar

 public HashMap<String, String> uploaderDeploiement(@RequestParam(value = "file", required = true) final MultipartFile file){}

O

 public HashMap<String, String> uploaderDeploiement(MultipartHttpServletRequest request){}

y luego obtenga MultipartFile de MultipartHttpServletRequest

over 4 years ago · Santiago Trujillo Report

0

Puede consultar este código para la carga de archivos, ya que funciona bien en myside.

Código Java

 @RequestMapping(value = "/upload", method = RequestMethod.POST, consumes = MediaType.MULTIPART_FORM_DATA) public URL uploadFileHandler(@RequestParam("name") String name, @RequestParam("file") MultipartFile file) throws IOException { /******* Printing all the possible parameter from @RequestParam *************/ System.out.println("*****************************"); System.out.println("file.getOriginalFilename() " + file.getOriginalFilename()); System.out.println("file.getContentType()" + file.getContentType()); System.out.println("file.getInputStream() " + file.getInputStream()); System.out.println("file.toString() " + file.toString()); System.out.println("file.getSize() " + file.getSize()); System.out.println("name " + name); System.out.println("file.getBytes() " + file.getBytes()); System.out.println("file.hashCode() " + file.hashCode()); System.out.println("file.getClass() " + file.getClass()); System.out.println("file.isEmpty() " + file.isEmpty()); /*************Parameters to b pass to s3 bucket put Object **************/ InputStream is = file.getInputStream(); String keyName = file.getOriginalFilename(); }

Angular js

 var form = new FormData(); form.append("file", "image.jpeg"); var settings = { "async": true, "crossDomain": true, "url": "http://url/", "method": "POST", "headers": { "cache-control": "no-cache" }, "processData": false, "contentType": false, "mimeType": "multipart/form-data", "data": form } $.ajax(settings).done(function (response) { console.log(response); });
over 4 years ago · Santiago Trujillo Report

0

Faltaban algunas entradas en mis archivos de configuración de primavera y en mi pom.xml.

pom.xml

 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency>

En mi despachador-servlet.xml

 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="536870912"/> </bean>

API de descanso

 public HashMap<String, String> uploaderDeploiement(@RequestParam MultipartFile file){ //java code here }

¡Espero que ayude a alguien!

over 4 years ago · Santiago Trujillo 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!