То, что я хотел сделать, было довольно простым, как вы могли подумать: создать статический файл json, чтобы браузеры могли кэшировать вывод, а вы неМне нужно опрашивать базу данных на предмет больших фрагментов данных.
Поэтому я создал файл JSON test.json с содержимым [{"frut": 1}]
(Мои настоящие файлы находятся в этом регионе из 3 МБ)
Я зашел на http://domain.com/frut.json и получил ошибку 404
404 - Файл или каталог не найдены.
Ресурс, который вы ищете мог быть удален, изменить его название или временно недоступен.
Прежде всего я был удивлен .. файл был там, почему бы не предложить его для загрузки или 403 запрещено ...
Хорошо. Google, попади на https://www.sencha.com/forum/showthread.php?33266-Some-Problem-with-JSON/page2#post_229858
Итак, я попробовал
IIS7 configuration to support JSON:
Using IIS manager: clock on IIS server (the main node on the left - where you see the machine name)
1. Add ‘json’ MIME Type
* Double click on ‘MIME Types’ icon
* Click ‘Add…’ link (under Actions section on the right side)
In ‘Add MIMI Type’ window type:
File name extension: .json
MIME type: application/x-javascript
* Click OK, You should see the .json MIME Type added to the list of the MIME Types list.
2. Add Script Map Handler for ‘json’ MIME Type
* Double click on ‘Handler Mappings’ icon
* Click on ‘Add Script Map…’ link (under Actions section on the right side)
* In ‘Add Script Map’ window type:
Request path: *.json
Executable: C:\Windows\System32\inetsrv\asp.dll
Name: JSON
* Click OK (Message box pops up with a message: Do you want to allow this ISAPI extension?...etc ) Click Yes, You should see the .json extension added to the list of the Handler Mappings list
Хорошо. Ошибка 500
вместо ошибка 404
. Не понимая, почему ... как, что, черт возьми, происходит.
Я проверил логи. здесь пусто. Просто неопределенное упоминание 500 в запросе. Это оно. нет подробностей, нет журналов ошибок. ничего.
В этот момент я снова начинаю серьезно ненавидеть Microsoft.
Много читал об ограничениях на запросы, но это не так, потому что этот файл даже не достигает 1 КБ, не говоря уже о 2 ГБ.
Еще раз погуглите, в итоге нечего показать.
Вопрос Как мне получить простой текстовый файл JSON для отображения в IIS 7.5, чтобы я мог запросить с помощью ajax-запроса без самоубийства IIS через простой текстовый файл.
Решение кажется простым, но нет возможности найти желаемое поведение из IIS.
Решение в основном заключается в том, чтобы не выступать в качестве приложения/x-javascript
, но в виде text/json
На основании ответа на IIS не может обслуживать некоторые расширения файлов
Используя менеджер IIS: нажмите на сервер IIS (главный узел слева - где вы видите имя машины)
json
MIME Type
MIME Types
Add...
(в разделе "Действия" справа).
В
Добавить MIME тип
тип окна:
Расширение имени файла:.json
MIME тип:text/json
OK
, Вы должны увидеть .json
MIME Type, добавленный в список MIME Types.Теперь, когда вы запрашиваете файл, он служит ему как обычный текстовый файл, именно так, как вы хотите.
.