RestTemplate을 사용하여 원격 인터페이스를 호출하여 파일 업로드

문제 설명 : 제 3자가 파일 업로드를위한 인터페이스를 작성했습니다.이 인터페이스의 요청 방법은 Post request입니다. 요청 매개 변수는 모두 세 개의 매개 변수를 포함하는 양식 데이터 형식으로 제출됩니다.

 첫 번째 : 쿠키 (문자열 유형)

 두 번째 : seqNo (문자열 유형)

 셋째 : 파일 (파일 형식)

해결 방법 : 기존 Spring Cloud Feign 컴포넌트를 사용하여 원격 인터페이스를 호출하여 파일 업로드를 구현할 때 비정상적인 오류가 발생하는 경우가 있으므로 다음 두 가지 방법을 사용하여 파일을 업로드하는 것이 좋습니다.

첫 번째 방법 : RestTemplate을 사용하여

import org.springframework.core.io.InputStreamResource;

import java.io.InputStream;

public class CommonInputStreamResource extends InputStreamResource {
    private long length;
    private String fileName;

    public CommonInputStreamResource(InputStream inputStream, long length, String fileName) {
        super(inputStream);
        this.length = length;
        this.fileName = fileName;
    }

    /**
     * 覆写父类方法
     * 如果不重写这个方法,并且文件有一定大小,那么服务端会出现异常
     * {@code The multi-part request contained parameter data (excluding

추천

출처blog.csdn.net/y_bccl27/article/details/115088532