Estoy obteniendo el PDF a través de la URL y quiero verificar si esa URL devolverá el documento correctamente.
Enviar una solicitud a través de fetch()
Obtener una response.text()
¿Quieres comprobar si existe el texto?
El texto siempre está vacío.
¿No puedes entender por qué?
response.text() siempre devuelve texto vacío, incluso cuando existe un documento PDF en respuesta.
const handleOpenPDF = (url: any) => { fetch(url, { method: 'GET', mode: 'no-cors', }) .then(res => res.text()) .then(text => { enter code here // TEXT is always empty event when response is good console.warn('text', text); window.open(url, '_blank'); }) .catch(err => { console.warn('Error', err); }); };Tenga en cuenta que res => res.text() significa leer el cuerpo como una cadena. Por lo tanto, es una buena idea usar response.json() antes de acceder a la respuesta. algo como esto:
const handleOpenPDF = (url: any) => { fetch(url, { method: 'GET', mode: 'no-cors', }) .then(res => res.json()) .then(text => { console.warn('text', text); window.open(url, '_blank'); }) .catch(err => { console.warn('Error', err); }); };También vea esta respuesta.