ขั้นตอนการอัปโหลดไฟล์
ขั้นตอนที่หนึ่ง:รับที่อยู่สำหรับอัปโหลดไฟล์ ใช้ FileUpload Url ที่ได้รับจากอินเทอร์เฟซสำหรับรับที่อยู่การอัปโหลดไฟล์โดยตรง
ขั้นตอนที่สอง:อัปโหลดไฟล์ ใช้ URL ที่ได้รับจากขั้นตอนที่หนึ่งเพื่ออัปโหลดสตรีมไฟล์โดยใช้ HTTP PUT
【ข้อควรระวัง】: contentType ที่ส่งในขั้นตอนที่หนึ่งจะต้องสอดคล้องกับ Content-Type ที่ส่งในส่วนหัวของขั้นตอนที่สอง มิฉะนั้น จะเกิดข้อผิดพลาดที่มีรหัสข้อผิดพลาด 403
【ข้อควรระวัง】: contentMD5 ไม่จำเป็นต้องกรอก หากส่ง contentMD5 และ contentType ผ่านขั้นตอนที่หนึ่ง จะต้องส่ง 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 ของไฟล์ คำอธิบายเพิ่มเติม: ต้องรับอาร์เรย์ไบนารี 128 บิตของ MD5 ของไฟล์ก่อน จากนั้นจึงเข้ารหัส Base64 ไบนารีนี้ 【ข้อควรระวัง】หากส่งค่าพารามิเตอร์นี้ จะต้องส่งค่า Content-MD5 ของไฟล์ที่อัปโหลดในขั้นตอนที่สองด้วย |
contentType | string | true | ประเภทเนื้อหา 【ข้อควรระวัง】จะต้องส่งค่า Content-Type ของไฟล์ที่อัปโหลดในขั้นตอนที่สองด้วย |
ตัวอย่างคำขอ
{
"fileName": "测试.pdf",
"contentType": "application/pdf"
}
พารามิเตอร์การตอบสนอง
ชื่อพารามิเตอร์ | ประเภท | คำอธิบาย |
fileKey | string | ไฟล์ fileKey |
fileName | string | ชื่อไฟล์ |
fileUploadUrl | string | ที่อยู่สำหรับอัปโหลดไฟล์ มีผลภายใน 60 นาที 【ข้อควรระวัง】โปรดขอที่อยู่สำหรับอัปโหลดจากอินเทอร์เฟซอีกครั้งหลังจากหมดอายุ |
ตัวอย่างการตอบสนอง
{
"code": "0",
"data": {
"fileKey": "xxxxxxxxx",
"fileName": "签署.pdf",
"fileUploadUrl": "文件上传地址"
},
"message": "成功"
}
อัปโหลดไฟล์
URL fileUpload ที่ได้รับจากอินเทอร์เฟซ “รับที่อยู่สำหรับอัปโหลดไฟล์”
คำอธิบายอินเทอร์เฟซ
ใช้วิธีการร้องขอ PUT เพื่ออัปโหลดสตรีมไฟล์ (สตรีมไบต์ไบนารี) ไปยังฝั่งเซิร์ฟเวอร์ผ่าน fileUpload Url (ที่อยู่สำหรับอัปโหลดไฟล์) ที่ได้รับ
พารามิเตอร์คำขอ
ชื่อพารามิเตอร์ | ประเภท | จำเป็น | คำอธิบาย |
Content-MD5 | string | false | สอดคล้องกับค่า contentMD5 ใน Body ของ 【รับที่อยู่สำหรับอัปโหลดไฟล์】 |
Content-Type | string | true | ประเภท MIME ของไฟล์ปลายทาง คำอธิบายเพิ่มเติม: สามารถกรอก application/octet-stream หรือ application/pdf ได้ และต้องสอดคล้องกับพารามิเตอร์คำขอของอินเทอร์เฟซรับที่อยู่อัปโหลด |
2. HTTP BODY:สตรีมไบต์ไบนารีของไฟล์ที่จะอัปโหลด
3. วิธีการเข้ารหัส:
ตัวอย่างคำขอ
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