Код: Выделить всё
npx create-next-app@latest --apiМне нужно обрабатывать загрузку файлов (multipart/form-data), но я сталкиваюсь с некоторыми проблемами.
Текущий подход
Я попробовал использовать Multer, который отлично работает в Express или Pages Router, вот так:
Код: Выделить всё
import multer from 'multer'
import { v4 as uuidv4 } from 'uuid'
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './public/temp')
},
filename: function (req, file, cb) {
cb(null, `${uuidv4()}-${file.originalname}`)
}
})
export const upload = multer({ storage })
Код: Выделить всё
app/api- Маршруты API в App Router используют стандартные объекты веб-запроса, а не Express req/.
Код: Выделить всё
res - Промежуточное ПО, такое как next-connect и upload.single('file'), несовместимо.
- и req.body не существуют одинаково, что приводит к ошибкам TypeScript и времени выполнения.
Код: Выделить всё
req.cookies
Подробнее здесь: https://stackoverflow.com/questions/798 ... er-doesn-t
Мобильная версия