Cita:
Empezado por ermendalenda
He probado a hacer el envio con el certificado caducado, otro con un certificado que no se corresponda con el del emisor, otro con la clave incorrecta y el formato devuelto en la respuesta no está dentro del formato lógico de respuestas, pero se puede identificar buscando la frase por ejemplo "Error de identificación" "No autorizado"...
Código PHP:
<!DOCTYPE html>
<html lang="es">
<head>
<meta name="site" content="Sede"/>
<link href="/static_files/common/css/aeat.07.css" rel="stylesheet" type="text/css">
<meta title="AEATviewport" content="width=device-width, initial-scale=1.0" name="viewport">
<title>Agencia Tributaria: 401</title><meta name="ObjectId" content="a8937bde849c7710VgnVCM100000dc381e0aRCRD"/><meta name="keyword" content="erro4011"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="detalle" content="errores"/>
</head>
<body>
<div id="body" data-template-id="cc1c55b3cac46710VgnVCM100000dc381e0aRCRD" class="s_Sede p_estandar t_informacion">
<header id="AEAT_header" class="header_aeat d-print-none d-app-none" >
<!-- CABECERA -->
<!--googleoff: index-->
<a class="focus-only" href="#acc-main">Saltar al contenido principal</a>
<div class="header-sup_aeat w-100">
<div class="container">
<div class="row">
<!-- CABECERA IZQUIERDA-->
<div id="topIzquierda" class="pl-0"><nav class="header-contLogos_aeat"><a href="/Sede/inicio.html" title="Página de inicio" class="header-logosPrincipales_aeat"><span class="logoGobierno Sede">Logotipo Gobierno de España</span><span class="logoAEAT logoSite logoSede ml-2 overflow-hidden">Logotipo Organismo</span></a></nav></div><!-- CABECERA IZQUIERDA FIN -->
</div>
</div>
</div>
<!--googleon: index-->
<!-- CABECERA FIN -->
<!-- MENU -->
<!--googleoff: index--><div class="w-100 bg-primary p-1"><div class="container"><div class="row justify-content-between align-items-center"><button class="header-btnMovil_aeat text-white d-lg-none col-2 btn btn-link" type="button" id="menuPrincipal"><i class="aeat-ico fa-ico-menu ico-size-2 w-100" title="Abrir menú móvil" aria-hidden="true" role="presentation"></i><span class="sr-only">Menú móvil</span></button><nav id="aeat_menuPrincipal" class="navbar-dark navbar navbar-expand-lg p-0 col-12 col-xl-8 col-lg-9 d-none d-lg-flex" aria-label="Menú principal"><!--clase para movil: header-navMovil_aeat--><ul class="navbar-nav"><li class="nav-item"><a href="#" class="py-3 px-4 nav-link dropdown-toggle invisible" role="button"><span>Aqui se cargarán las opciones del menú cuando estén disponibles</span></a></li></ul></nav></div></div></div><!--googleon: index-->
<!-- MENU FIN -->
</header><nav aria-label="Migas navegación" class="js-nav-principal d-print-none d-app-none">
<ol class="breadcrumb container bg-transparent px-md-4 px-3">
<li class="breadcrumb-item breadcrumb-item__volver"><a data-aeat-id='b3552c121d27c610VgnVCM100000dc381e0aRCRD' href='/Sede/inicio.html'><i class="aeat-ico fa-ico-chevron-left ico-size-mini mr-2 d-md-none" aria-hidden="true" role="presentation"></i>Inicio</a></li>
</ol>
</nav><div class="container-text js-container">
<div class="row my-3 justify-content-center">
<main class="col-12 col-lg-7" id="acc-main">
<div class="d-flex"><i class="aeat-ico fa-ico-error-sm ico-size-4 mr-3 text-danger" aria-hidden="true" role="presentation"></i><h1 id="js-nombre-canal" class="font-weight-bold mb-0 display-4 mb-3 text-danger">401</h1></div><p>No autorizado. Se ha producido un error al verificar el certificado presentado. Las causas más probables de este error son:</p><ul><li>El certificado no ha sido firmado por una autoridad reconocida.</li><li>El tipo de certificado no es válido para el servicio al que se quiere acceder.</li><li>El certificado ha expirado.</li></ul><p>Puede contactar con el servicio de atención al contribuyente indicando el código de error 401.</p><a target="_self" title="Comunicar incidencia" href="https://www2.agenciatributaria.gob.es/soporteaeat/Formularios.nsf/soporteOnline.php?OpenForm&codigoError=401" class="d-block">Comunicar incidencia</a></main>
</div>
</div>
<!--googleoff: index-->
<!--
<section>
<div id="last-update" class="container pb-3">
<p class="small text-center mb-0">
Página actualizada: <time datetime="2022-09-28">28/septiembre/2022</time>
</p>
</div>
</section>
-->
<footer class="bg-primary d-print-none d-app-none" >
<noscript><div class="container py-3"><div class="row"><a class="text-white" href="https://sede.agenciatributaria.gob.es/Sede/condiciones-uso-sede-electronica/accesibilidad/declaracion-accesibilidad.html">Accesibilidad</a></div></div></noscript><div id="last-update" class="container pb-3"><p class="small text-center text-white mb-0">Página actualizada: <time datetime="2022-09-28">28/septiembre/2022</time></p></div></footer><!--googleon: index-->
</div>
<div class="d-none">
<span class="js-responsive d-xs-block"></span>
<span class="js-responsive d-sm-block"></span>
<span class="js-responsive d-md-block"></span>
<span class="js-responsive d-lg-block"></span>
<span class="js-responsive d-xl-block"></span>
<span class="js-responsive d-xxl-block"></span>
<span class="js-responsive d-xxxl-block"></span>
</div>
<link href="/static_files/common/css/aeat.07.print.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="/static_files/common/script/aeat.07.js"></script>
</body>
</html>
|
Hola ermendalenda como lo haces para obtener toda la respuesta html completa en el caso de un error en el certificado?
Acabo de hacer la prueba con un certificado no válido y ha saltado una excepción al enviar, de tipo ProtocolException y en el mensaje hay los primeros 1024 caracteres de lo que has posteado tu pero no está entero y no puedo ver la parte del error de certificado.
Dice solo esto:
Código PHP:
El tipo de contenido text/html del mensaje de respuesta no coincide con el tipo de contenido del enlace (text/xml; charset=utf-8). Si usa un codificador personalizado, asegúrese de que el método IsContentTypeSupported se implemente correctamente.
Los primeros 1024 bytes de la respuesta fueron:
<!DOCTYPE html>
<html lang="es">
<head>
<meta name="site" content="Sede"/>
<link href="/static_files/common/css/aeat.07.css" rel="stylesheet" type="text/css">
<meta title="AEATviewport" content="width=device-width, initial-scale=1.0" name="viewport">
<title>Agencia Tributaria: 403</title><meta name="ObjectId" content="84837bde849c7710VgnVCM100000dc381e0aRCRD"/><meta name="keyword" content="erro4033"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="detalle" content="errores"/>
</head>
<body>
<div id="body" data-template-id="cc1c55b3cac46710VgnVCM100000dc381e0aRCRD" class="s_Sede p_estandar t_informacion">
<header id="AEAT_header" class="header_aeat d-print-none d-app-none" >
<!-- CABECERA -->
<!--googleoff: index-->
<a class="focus-only" href="#acc-main">Saltar al contenido principal</a>
<div class="header-sup_aeat w-100">
<div class="container">
<div class="row">
<!-- CABECERA IZQUIERDA-->
<div id="topIzquie'.
Yo utilizo C# .Net
Muchas gracias