Saltar al contenido

resto: ¿cuál es el tipo de contenido JSON correcto?

septiembre 22, 2021
apple touch icon@2

No hay duda de que application/json es la mejor MÍMICA escriba para una respuesta JSON.

Pero tuve algo de experiencia en la que tuve que usar application/x-javascript debido a algunos problemas de compresión. Mi entorno de alojamiento es alojamiento compartido con Ve papi. No me permiten cambiar la configuración del servidor. Había agregado el siguiente código a mi web.config archivo para comprimir respuestas.

<httpCompression>
    <scheme name="gzip" dll="%Windir%system32inetsrvgzip.dll"/>
    <dynamicTypes>
        <add mimeType="text/*" enabled="true"/>
        <add mimeType="message/*" enabled="true"/>
        <add mimeType="application/javascript" enabled="true"/>
        <add mimeType="*/*" enabled="false"/>
    </dynamicTypes>
    <staticTypes>
        <add mimeType="text/*" enabled="true"/>
        <add mimeType="message/*" enabled="true"/>
        <add mimeType="application/javascript" enabled="true"/>
        <add mimeType="*/*" enabled="false"/>
    </staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" doDynamicCompression="true"/>

Al usar esto, las páginas .aspx se comprimieron con g-zip, pero las respuestas JSON no. yo añadí

<add mimeType="application/json" enabled="true"/>

en las secciones de tipos estáticos y dinámicos. Pero esto no comprime las respuestas JSON en absoluto.

Después de eso, eliminé este tipo recién agregado y agregué

<add mimeType="application/x-javascript" enabled="true"/>

en las secciones de tipos estáticos y dinámicos, y cambió el tipo de respuesta en

.ashx (controlador asincrónico) para

application/x-javascript

Y ahora descubrí que mis respuestas JSON estaban comprimidas con g-zip. Así que personalmente recomiendo usar

application/x-javascript

solo si desea comprimir sus respuestas JSON en un entorno de alojamiento compartido. Porque en el hosting compartido no te permiten cambiar IIS configuraciones.

close