Un ficheiro gardado aínda non é unha descarga verificada
Comprobe que unha descarga a través do proxy contén o artefacto esperado, non unha páxina de autenticación nin unha resposta incompleta, antes de publicala ou usala.
Un report.xlsx hipotético pesa 8 KB e ábrese como unha páxina de inicio de sesión. O programa gardou un ficheiro correctamente, pero nunca obtivo a folla de cálculo prevista. O nome do ficheiro elíxese localmente; non é proba do que chegou.
Faga da aceptación un paso separado antes de publicar a descarga temporal:
- Esixa unha transferencia correcta e o estado de resposta esperado. Conserve o erro en lugar de tratar como completos os bytes escritos antes del.
- Compare o contido co tipo de artefacto esperado. Unha páxina de inicio de sesión ou de filtro pode devolver 200. O Content-Type pode ser incorrecto, e un prefixo HTML nunha folla de cálculo é un aviso que require investigación. Un ficheiro que comeza cunha liña de estado HTTP apunta máis ben a unha resposta en bruto.
- Valide todos os bytes gardados cunha suma de comprobación ou sinatura de confianza cando estea dispoñible. Só despois de superar as comprobacións requiridas debería a aplicación publicar ou usar o ficheiro final.
Calcular un hash sen un valor esperado só identifica os bytes que recibiu. Unha suma de comprobación sen sinatura obtida pola mesma ruta non fiable pode compartir a debilidade do artefacto; use unha expectativa de confianza independente.
Teña coidado tamén coas comparacións de tamaño. Un cliente HTTP pode descodificar a codificación de contido durante a lectura, polo que a lonxitude resultante do ficheiro pode diferir lexitimamente dunha cabeceira que describe a mensaxe codificada. Compare a expectativa do editor coa representación realmente gardada.
Se un intento falla, conserve a saída temporal só para unha retomada deliberada ou desbótea. Deixar bytes incompletos na ruta final obriga ao seguinte programa a adiviñar se son utilizables.