[java] Postman에서 파일 및 JSON 데이터를 업로드하는 방법은 무엇입니까?

Spring MVC를 사용하고 있으며 이것이 내 방법입니다.

/**
* Upload single file using Spring Controller.
*/
@RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
public @ResponseBody ResponseEntity<GenericResponseVO<? extends IServiceVO>> uploadFileHandler(
            @RequestParam("name") String name,
            @RequestParam("file") MultipartFile file,
            HttpServletRequest request,
            HttpServletResponse response) {

    if (!file.isEmpty()) {
        try {
            byte[] bytes = file.getBytes();

            // Creating the directory to store file
            String rootPath = System.getProperty("catalina.home");
            File dir = new File(rootPath + File.separator + "tmpFiles");
            if (!dir.exists()) {
                dir.mkdirs();
            }

            // Create the file on server
            File serverFile = new File(dir.getAbsolutePath() + File.separator + name);
            BufferedOutputStream stream = new BufferedOutputStream(new FileOutputStream(serverFile));
            stream.write(bytes);
            stream.close();

            System.out.println("Server File Location=" + serverFile.getAbsolutePath());

            return null;
        } catch (Exception e) {
            return null;
        }
    }
}

우편 배달부와 파일에 세션 ID를 전달해야합니다. 어떻게 할 수 있습니까?



답변

우편 배달부에서 메소드 유형을 POST로 설정하십시오. .

그런 다음 본문-> 양식 데이터-> 매개 변수 이름 입력 ( 파일 코드에 따른 )을 선택하십시오.

그리고 다음 값 열을 오른쪽에있을 것 “텍스트 파일”드롭 다운 선택 파일 합니다. 이미지 파일을 선택하고 게시하십시오.

나머지 “텍스트”기반 매개 변수의 경우 우편 배달부에서 일반적으로하는 것처럼 게시 할 수 있습니다. 매개 변수 이름을 입력하고 오른쪽 드롭 다운 메뉴에서 “텍스트”를 선택하고 값을 입력 한 다음 보내기 버튼을 누르십시오. 컨트롤러 메서드가 호출되어야합니다.


답변

누락 된 비주얼 가이드

당신은해야한다 첫번째 의 거의 보이지 않는 옅은 회색에 흰색 드롭 다운 찾을 File마법의 키를 잠금 해제 그 어떤 Choose Files버튼을 누릅니다.

후에 당신이 선택 POST, 다음 선택 Body->form-data, 다음 파일 드롭 다운 메뉴를 찾은 다음 ‘파일’을 선택, 단지 다음 버튼 마술 표시 ‘파일 선택’을합니다 :

Postman POST 파일 설정-(텍스트, 파일) 드롭 다운 강조 표시


답변

아마도 다음과 같이 할 수 있습니다.

postman_file_upload_with_json


답변

이렇게 :

여기에 이미지 설명 입력

본문-> 양식 데이터-> 파일 선택

“이름”대신 “파일”을 써야합니다.

또한 Body-> raw 필드에서 JSON 데이터를 보낼 수 있습니다. (JSON 문자열 붙여 넣기)


답변

  1. 헤더를 제공하지 마십시오.
  2. .json 파일에 json 데이터를 넣으십시오.
  3. 두 파일을 모두 선택하십시오. 하나는 .txt 파일이고 다른 하나는 요청 매개 변수 키에 대한 .json 파일입니다.

답변

양식 데이터를 사용하여 멀티 파트에 파일을 업로드 하고 동일한 POST 요청 에 json 데이터 (Dto 객체)를 보내야하는 경우

컨트롤러에서 JSON 개체를 String으로 가져오고이 줄을 추가하여 Deserialize로 만듭니다.

ContactDto contactDto  = new ObjectMapper().readValue(yourJSONString, ContactDto.class);


답변

Postman 멀티 파트 양식 데이터 컨텐츠 유형

[SHOW COLUMNS]에서 [Content Type]을 선택한 다음 “application / json”의 내용 유형을 json 텍스트의 매개 변수로 설정합니다.