soy nuevo en esto, y no entiendo algunas cosas, pero segun yo este error es muy raro, estoy usando fastify-ts, multer y cloudinary, quiero decir resultado que la ruta del archivo es el archivo para subir, pero no me dice let
Este es el código donde hago la solicitud:
fastify.post<{ Body: CreatePublicationBody; Params: CreatePublicationParams; }>( "/create/:userId", { preHandler: upload, }, async (request, reply) => { const { description } = request?.body; const { userId } = request.params; const { path } = request.file; const result = await v2.uploader.upload(path); console.log(result); const payload = { userId: userId, description: description, image: result.secure_url, }; await fastify.store.Publication.create(payload, (err, data) => { if (err || !data) { throw new Error("Error to create Publication"); } else { return reply.status(200).send(data); } }); return "ok"; } );este es el error que me da
ingrese la descripción de la imagen aquí
Y así es como lo grabo:
import fp from "fastify-plugin"; import multer from "fastify-multer"; import { File, FilesObject } from "fastify-multer/lib/interfaces"; import { v2 } from "cloudinary"; export default fp(async (fastify, opts) => { fastify.decorate("someSupport", function () { return "hugs"; }); void fastify.register(multer.contentParser); v2.config({ cloud_name: process.env.CLOUD_NAME, api_key: process.env.API_KEY, api_secret: process.env.API_SECRET, }); });Creo que su método de upload espera una función de devolución de llamada como segundo parámetro, como este:
cloudinary.uploader.upload(path, function(error, result) {console.log(result, error)});Para referencia: https://cloudinary.com/documentation/node_integration#quick_example_file_upload