Я делаю серверную часть для сайта на фреймверке Adonis JS.
Мне поставили задачу грузить большие файлы, для решение этой задачи я решил использовать загрузку файла чанками.
Я нашел готовый код для клиентской части, он вроде бы работает.
Вот код на стороне клиента:
https://codepen.io/chaly7500/pen/YzQyZNR
Код на стороне сервера:
//routes.ts
apiGroup('v1', 'files', Route.group(async () => {
Route.post('upload', 'Files/UploadController.index')
}))
//UploadController.ts
'use strict'
import {HttpContextContract} from "@ioc:Adonis/Core/HttpContext";
import MediaRepositories from "App/Repositories/MediaRepositories";
export default class UploadController {
public async index({request}:HttpContextContract){
const file = request.file('file')
// console.log(file)
return await MediaRepositories.createMedia(file)
}
}
//MediaRepositories.ts
'use strict'
import Application from "@ioc:Adonis/Core/Application";
export default class MediaRepositories {
static async createMedia(file) {
await file.move(Application.publicPath('media/transientmodels'));
}
static async updateMediaById(){
}
static async updateMediaByIds(){
}
}
После загрузки на сервере у меня есть файл blob
И при изминении файла blob на blob.png изображение ломается
Реализоавывал ли кто то загрузку больших файлов используя AdonisJS?
Или как правильно конвертировать blob файл в изображение или видео?
Основной вопрос:
Как загружать в adonis больгие файлы и не получать ошибку request timeout ?