Compresión HTTP
Problema de compresión HTTP
Algunos usuarios informan que si configuran la compresión HTTP en IIS, encuentran errores al enviar archivos generados a los navegadores de los clientes.
Explicación
Usamos**“Disposición de contenido”, “en línea; nombre de archivo = prueba.xls”** encabezado para obligar al navegador a abrir el archivo y**“Disposición de contenido”, “archivo adjunto; nombre de archivo = prueba.xls”** encabezado para obligar al navegador a abrir el**Guardar como** y use Microsoft Excel para abrir el archivo. Sin embargo, hay algunas excepciones que existen.
Excepciones
Puede usar el siguiente código para verificar que NO es un error de Aspose.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
FileStream fs1 = new FileStream(path + "\\KnowledgeBase\\SampleData.xlsx", FileMode.Open, FileAccess.Read); | |
byte[] data1 = new byte[fs1.Length]; | |
fs1.Read(data1, 0, data1.Length); | |
this.Response.ContentType = "application/xls"; | |
Response.AddHeader("content-disposition", "inline; filename=book1.xls"); | |
Response.BinaryWrite(data1); | |
Response.End(); |
Soluciones
Puede usar una de las siguientes soluciones para resolver este problema:
- Mueva los archivos ASP.NET especificados (que contienen un código que llama a Aspose.Cells) a otra carpeta que no esté comprimida.
- Deshabilite la compresión HTTP para contenido dinámico.
- Guarde el archivo generado en su servidor y proporcione un enlace a sus usuarios.
Si desea utilizar la compresión HTTP, utilice siempreAbrirEnExcel opción en lugar deAbierta en el navegador opción cuando sabe que ha habilitado la compresión IIS.