2017-02-13 2 views
0

저는 SpringBoot 1.5.1 grades로 프로젝트를했습니다.스프링 컨트롤러가 2 번 호출되었습니다.

"확인"또는 다른 상태로 PDF 파일로 응답해야합니다.

문제는 "우편 배달부"코드 호출이 2 번 요청할 때입니다. "curl"코드로 요청하면 1 번 호출됩니다.

분명히 1 번 호출하고 싶습니다.

@SpringBootApplication 
public class Application { 
    public static void main(String[] args) { 
    SpringApplication.run(Application.class, args); 
} 
} 

그리고 내 컨트롤러 :

@RequestMapping(value = "/report/{reportTemplate:.+}", method = POST) 
@ResponseBody 
public ResponseEntity createReport(HttpEntity<List<ParametersEntity>> httpEntity, 
            @PathVariable String reportTemplate) throws IOException { 

byte[] data = ...;// my data 
return ResponseEntity 
       .ok() 
       .contentLength(data.length) 
       .contentType(MediaType.APPLICATION_PDF) 
       .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=output.pdf") 
       .contentType(MediaType.parseMediaType(MediaType.APPLICATION_PDF_VALUE)) 
       .body(data); 

    } 

createReport@RestController 클래스에

나는 응용 프로그램과 클래스가 있습니다.

또한 나는

server.port: 10500 
management.port: 10501 
management.address: 127.0.0.1 
+0

우편 배달부 버전은 무엇입니까? 그것의 측면에서 알려진 이슈 인 것 같습니다. –

답변

1

귀하의 코드 확인을 보이는/내 SRC/메인/자원 application.properties 파일이 있습니다. 그게 잘못이 아니야.

POSTMAN에서 요청을 호출 할 때 DEBUG 모드에 있으면 혼란스럽고 두 번째로 요청을 보낼 수 있습니다. 나는 그것이 어떤 구성에 달려 있다고 생각한다. 그러나 CURL에 문제가 없으면 POSTMAN에서 문제를 검색해야합니다. 코드가 아닐 수도 있습니다.

+0

추신 : 나는 이것을 논평으로 남겨 두었을 것이나 그렇게하기에 충분한 평판은 없다. – Leonardo

관련 문제