개발자 센터

파일 업로드

파일 업로드 작업 단계

1단계:파일 업로드 주소 가져오기。파일 직접 업로드 주소 가져오기 인터페이스를 사용하여 가져온 fileUpload URL을 사용합니다。
2단계:파일 업로드。1단계에서 가져온 URL을 통해 HTTP PUT 방식으로 파일 스트림을 업로드합니다。

【주의】: 1단계에서 전송한 contentType은 2단계 헤더에서 전송하는 Content-Type과 일치해야 합니다. 그렇지 않으면 오류 코드 403 오류가 발생합니다。

【주의】: contentMD5는 필수가 아닙니다. 1단계를 통해 contentMD5와 contentType을 전송한 경우 2단계 헤더에서도 Content-MD5와 Content-Type을 전송하고 일치시켜야 합니다.

파일 업로드 주소 가져오기

POST /esignglobal/v1/files/getUploadUrl

인터페이스 설명

이 인터페이스를 통해 파일 업로드 주소를 가져옵니다.

요청 매개변수

매개변수 이름

유형

필수 입력

설명

fileName

string

true

파일 이름

【주의】: 파일 확장명을 반드시 포함해야 합니다. 그렇지 않으면 후속 봉투 시작 시 유효성 검사를 통과하지 못할 수 있습니다.

예: 계약서명1.pdf 

추가 설명:

(1) 해당 필드의 파일 확장자 이름과 실제 파일 확장자가 일치해야 합니다. 예를 들어 업로드하는 파일 형식이 PDF 파일인 경우 이 매개변수는 “xxx.pdf”로 전달해야 하며 “xxx.docx”는 안 됩니다.

(2) 파일 이름에 다음 9개의 특수 문자(/\:*"<>|?)와 모든 이모지 표정을 포함할 수 없습니다.

(3) .pdf 파일 형식만 지원합니다.

contentMD5

string

false

파일의 Content-MD5 값

추가 설명:

먼저 파일 MD5의 128비트 이진 배열을 가져온 다음 이 이진 파일을 Base64로 인코딩해야 합니다.

【주의】 이 매개변수 값을 전송하는 경우 2단계 파일 업로드 Content-MD5도 동일한 값을 전송해야 합니다.

contentType

string

true

콘텐츠 유형

【주의】 2단계 파일 업로드 Content-Type도 동일한 값을 전송해야 합니다.

요청 예시

{
  "fileName": "测试.pdf",
  "contentType": "application/pdf"
}

응답 매개변수

매개변수 이름

유형

설명

fileKey

string

파일fileKey

fileName

string

파일 이름

fileUploadUrl

string

파일 업로드 주소, 60분 이내 유효

【주의】 만료 후 인터페이스를 다시 요청하여 업로드 주소를 받으십시오.

응답 예시

{
    "code": "0",
    "data": {
    "fileKey": "xxxxxxxxx",
      "fileName": "签署.pdf",
      "fileUploadUrl": "文件上传地址"
  },
  "message": "成功"
}

 

파일 업로드

“파일 업로드 주소 가져오기” 인터페이스를 통해 획득한 fileUpload Url입니다.

인터페이스 설명

획득한 fileUpload Url(파일 업로드 주소)을 통해 PUT 요청 방법으로 파일 스트림(바이너리 바이트 스트림)을 서버에 업로드합니다.

요청 파라미터

1. 헤더

파라미터 이름

유형

필수

설명

Content-MD5

string

false

【파일 업로드 주소 가져오기】 Body 본문의 contentMD5 값과 일치

Content-Type

string

true

대상 파일의 MIME 유형

추가 설명:

application/octet-stream 또는 application/pdf를 입력할 수 있으며, 업로드 주소 가져오기 인터페이스의 요청 파라미터와 일치해야 합니다.

2. HTTP BODY:업로드할 파일의 이진 바이트 스트림
3. encode 방법:

요청 예시

fileName = URLEncoder.encode(fileName, "UTF-8");
// replace special characters
fileName = fileName
  .replaceAll("\\+", "%20")
  .replaceAll("%28", "(")
  .replaceAll("%29", ")")
  .replaceAll("%27", "'")
  .replaceAll("%21", "!")
  .replaceAll("%7E", "~");

응답 예시

http_status: 200

 

파일 업로드 주소 가져오기
인터페이스 설명
요청 매개변수
요청 예시
응답 매개변수
응답 예시
파일 업로드
인터페이스 설명
요청 파라미터
요청 예시
응답 예시