Tài liệu này được dịch bởi AI. Đối với bất kỳ thông tin không chính xác nào, vui lòng tham khảo phiên bản tiếng Anh
Tải tệp lên cho cả trường đính kèm và các bộ sưu tập tệp đều được hỗ trợ thông qua HTTP API. Cách thức gọi sẽ khác nhau tùy thuộc vào công cụ lưu trữ được sử dụng bởi trường đính kèm hoặc bộ sưu tập tệp.
Đối với các công cụ lưu trữ mã nguồn mở tích hợp sẵn trong dự án như S3, OSS và COS, HTTP API được gọi tương tự như chức năng tải lên trên giao diện người dùng, và các tệp đều được tải lên thông qua máy chủ. Khi gọi API, quý vị cần truyền mã thông báo JWT dựa trên thông tin đăng nhập của người dùng thông qua tiêu đề yêu cầu Authorization; nếu không, quyền truy cập sẽ bị từ chối.
Thực hiện thao tác create trên tài nguyên attachments (bảng đính kèm), gửi yêu cầu POST và tải nội dung nhị phân lên thông qua trường file. Sau khi gọi, tệp sẽ được tải lên công cụ lưu trữ mặc định.
Nếu quý vị muốn tải tệp lên một công cụ lưu trữ khác, quý vị có thể sử dụng tham số attachmentField để chỉ định công cụ lưu trữ đã được cấu hình cho trường của bộ sưu tập (nếu chưa được cấu hình, tệp sẽ được tải lên công cụ lưu trữ mặc định).
Khi tải lên một bộ sưu tập tệp, một bản ghi tệp sẽ tự động được tạo. Quý vị thực hiện thao tác create trên tài nguyên bộ sưu tập tệp, gửi yêu cầu POST và tải nội dung nhị phân lên thông qua trường file.
Khi tải lên một bộ sưu tập tệp, không cần chỉ định công cụ lưu trữ; tệp sẽ được tải lên công cụ lưu trữ đã được cấu hình cho bộ sưu tập đó.
Đối với các công cụ lưu trữ tương thích S3 được cung cấp thông qua plugin thương mại S3-Pro, việc tải lên bằng HTTP API cần được thực hiện qua nhiều bước.
Lấy thông tin công cụ lưu trữ
Thực hiện thao tác getBasicInfo trên bộ sưu tập storages (bảng lưu trữ), kèm theo tên công cụ lưu trữ (storage name), để yêu cầu thông tin cấu hình của công cụ lưu trữ.
Ví dụ về thông tin cấu hình công cụ lưu trữ được trả về:
Lấy thông tin tiền ký (presigned) từ nhà cung cấp dịch vụ
Thực hiện thao tác createPresignedUrl trên tài nguyên fileStorageS3, gửi yêu cầu POST và bao gồm thông tin liên quan đến tệp trong phần thân (body) để lấy thông tin tải lên tiền ký.
Lưu ý:
- name: Tên tệp
- size: Kích thước tệp (tính bằng byte)
- type: Loại MIME của tệp. Quý vị có thể tham khảo: Các loại MIME phổ biến
- storageId: ID của công cụ lưu trữ (trường
idđược trả về ở bước đầu tiên)- storageType: Loại công cụ lưu trữ (trường
typeđược trả về ở bước đầu tiên)Ví dụ dữ liệu yêu cầu:
Cấu trúc dữ liệu của thông tin tiền ký nhận được như sau:
Tải tệp lên
Sử dụng putUrl được trả về để thực hiện yêu cầu PUT và tải tệp lên dưới dạng phần thân (body).
Lưu ý:
- putUrl: Trường
putUrlđược trả về ở bước trước- file_path: Đường dẫn cục bộ của tệp cần tải lên
Ví dụ dữ liệu yêu cầu:
Tạo bản ghi tệp
Sau khi tải lên thành công, quý vị thực hiện thao tác create trên tài nguyên attachments (bảng đính kèm) bằng cách gửi yêu cầu POST để tạo bản ghi tệp.
Mô tả dữ liệu phụ thuộc trong
data-raw:
- title: Trường
fileInfo.titleđược trả về ở bước trước- filename: Trường
fileInfo.keyđược trả về ở bước trước- extname: Trường
fileInfo.extnameđược trả về ở bước trước- path: Mặc định là rỗng
- size: Trường
fileInfo.sizeđược trả về ở bước trước- url: Mặc định là rỗng
- mimetype: Trường
fileInfo.mimetypeđược trả về ở bước trước- meta: Trường
fileInfo.metađược trả về ở bước trước- storageId: Trường
idđược trả về ở bước đầu tiênVí dụ dữ liệu yêu cầu:
Ba bước đầu tiên tương tự như khi tải lên trường đính kèm, nhưng ở bước thứ tư, quý vị cần tạo một bản ghi tệp bằng cách thực hiện thao tác create trên tài nguyên bộ sưu tập tệp, gửi yêu cầu POST và tải thông tin tệp lên thông qua phần thân (body).
Mô tả dữ liệu phụ thuộc trong
data-raw:
- title: Trường
fileInfo.titleđược trả về ở bước trước- filename: Trường
fileInfo.keyđược trả về ở bước trước- extname: Trường
fileInfo.extnameđược trả về ở bước trước- path: Mặc định là rỗng
- size: Trường
fileInfo.sizeđược trả về ở bước trước- url: Mặc định là rỗng
- mimetype: Trường
fileInfo.mimetypeđược trả về ở bước trước- meta: Trường
fileInfo.metađược trả về ở bước trước- storageId: Trường
idđược trả về ở bước đầu tiênVí dụ dữ liệu yêu cầu: