Também tive este problema - e o problema acabou por ser permissões de arquivo na pasta onde o arquivo json estava armazenado. Eu respondi uma pergunta semelhante aqui .
Essas pessoas estão corretas para dizer que você precisa adicionar o tipo MIME.
O tipo MIME ativa a extensão do arquivo no servidor e o Mapeador de Manipulação informa ao IIS o que fazer com ele.
Você também precisa adicionar o manipulador de mapeamento e que você tem que ter o recurso do Windows chamado Classic Asp instalado para lidar com o mapeamento.
Veja como adicionar o manipulador de mapeamento:
- Abra o Gerenciador do IIS7
- Acesse as propriedades do Servidor IIS (ou apenas o site, se você não quiser uma configuração global)
- Clique em
Handler Mappings
- Clique em
Add a Script Map
- Insira as propriedades:
- Caminho da solicitação:
*.json
- Executável:
C:\WINDOWS\system32\inetsrv\asp.dll
- Nome:
JSON
(você pode chamar o que quiser)
- Clique em OK e pronto. Ele deve começar a funcionar e você não precisa de uma redefinição do IIS.
Além disso, algumas pessoas dirão para você usar 'application / x-javascript' como o aplicativo do tipo mime, mas o JSON não é javascript, per se ( é um subconjunto, no entanto) e, portanto, deve ser 'application / json', já que é o tipo de mídia registrado pela IANA para JSON.