Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

392
Vistas
La imagen cargada en WordPress a través de la API REST usando Next.js API Endpoint se carga, pero está en blanco

Estoy tratando de crear un formulario para cargar una imagen y luego configurarlo como una imagen destacada para una publicación que se creará una vez que se complete la carga.

Estoy usando WordPress como backend y Next.js como front-end.

Mi tipo de código funciona. La imagen se carga y recibo una respuesta con un ID de archivo adjunto generado. Incluso muestra el tamaño correcto de KB en el servidor, pero no genera los tamaños de imagen de WordPress. Al descargar la imagen del servidor, está en blanco. Parece estar corrupto.

Por razones de seguridad, necesito enviar los datos del formulario a un punto final personalizado de la API Next.js donde puedo usar el token de autenticación JWT para autorizar el comando.

Formulario.js

 const handleFormSubmit = async (data) => { const formData = new FormData() formData.append('file', data.locationImage[0]) const addImage = await fetch('/api/add-image', { method: 'POST', body: formData, headers: new Headers({ 'Content-Type': 'multipart/form-data', 'Content-Disposition': `attachment; filename=${data.locationImage[0].name}`, }), }) const imageID = await addImage.json() console.log(imageID) }

páginas/api/añadir-imagen.js

 import { fetchRefreshToken } from 'graphql/api' export default async function handler(req, res) { const file = req.body const getToken = await fetchRefreshToken() const refreshToken = getToken?.login.refreshToken const uploadImage = await fetch( 'https://mywordpresswebsite.com/wp-json/wp/v2/media', { body: file, method: 'POST', headers: new Headers({ Authorization: `Bearer ${refreshToken}`, 'Content-Disposition': `${req.headers['content-disposition']}`, }), }, ) const uploadedImage = await uploadImage.json() res.status(200).json({ result: uploadedImage }) }

Cuando agrego la autorización a Form.js y realizo la solicitud sin enviar los datos al extremo de la API de Next.js, la imagen se carga, WordPress genera tamaños personalizados y está ahí. Pero esto parece ser inseguro y no una solución.

Entonces, mi pregunta es, ¿qué está causando esto y cómo puedo cargar imágenes de forma segura usando Next.js?

¿Me estoy perdiendo una configuración en el objeto Encabezados? ¿FormData se convierte en un tipo de datos diferente cuando pasa por la API de Next.js? ¿Es un problema de Next.js?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda