Xin chào anh chị,
Nguyên tắc lưu ảnh phía server là lưu file vào ổ đĩa, sau đó lưu tên ảnh hoặc ID ảnh vào database nhưng em vẫn chưa biết cách truyền ảnh giữa 2 máy tính trong môi trường www như thế nào cho tối ưu. Em thường làm như này:
- Tại client (browser, mobile app, desktop app) nhận ảnh từ thiết bị user.
- Encode thành base64.
- Truyền text này qua mạng (REST API).
- Server decode và lưu vào disk.
- rename file và lưu tên ảnh vào database.
Ngoài ra trên web thì em truyền file bằng cách:
- client dùng javascript giải lập ra một form, đặt header request http là
Content-Type: multipart/form-data
- Controller server nhận tham số có kiểu dữ liệu là MultipartFile, sau đó dùng các method stream data để lưu file vào ổ cứng.
Cách này thì em không hiểu cơ chế hoạt động khi ảnh truyền quan network cho lắm, một số file lớn như video dễ lỗi.