image

Olá pessoal, hoje eu gostaria de mostrar e informar como eu resolvi um problema de mimeType dentro do Azure, servidor que hospedo os sites e sistemas. Mas isso pode ser aplicado a qualquer outro servidor que esteja utilizando, isso porque você acaba não tendo acesso ao IIS (Internet Information Services) da máquina hospedeira. Para isso, basta você utilizar alguns parâmetros para resolver.

  • Visual Studio
  • Plataforma Web
  • Servidor de hospedagem IIS

A situação foi a seguinte:

Um arquivo JavaScript estava chamando um arquivo com extensão .json e no browser estava informando pelo inspect que o arquivo não existia no local ou não era encontrado. Mas o arquivo estava lá no caminho correto. Verifiquei o caminho e até tentei executar o caminho direito, mas aparecia sempre que o arquivo não tinha sido encontrado.

Comecei a pesquisar sobre mimeType e eu percebi que o IIS pode não reconhecer a extensão diretamente chamada pelo JavaScript. Para teste eu acessai o arquivo de configuração chamado Web.config.

Dentro do arquivo, procure a tag <system.webServer> e acrescente outra chamada <staticContent>. Primeiro eu removi a extensão e depois adicionei com o mimeType application/json. Veja o código 1.1.

<system.webServer>
<!-- Adicionando arquivo .json para ser reconhecido para animação feita em /Images/Lottie/1.json e outros arquivos-->
<staticContent>
  <remove fileExtension=".json"/>
  <mimeMap fileExtension=".json" mimeType="application/json"/>
</staticContent>

Código 1.1 - Adicionando uma extensão via arquivo de configuração.

Depois que fiz isso, publiquei no Azure e tudo funcionou. Lembro que localmente funcionava, só quando publicava no servidor que deixava de funcionar, muito estranho no primeiro momento. Então fique atento com isso, procure entender o que está acontecendo sempre, use o debug e boa sorte.

Espero que tenha gostado e qualquer dúvida, pode entrar em contato pelo site https://www.mauriciojunior.org.