У меня есть очень простая тестовая страница, которая использует запросы XHR с $ jQuery .getJSON и $ .ajax методы. Та же страница работает в некоторых ситуациях а не в других. Specificially, это не работает в Chrome над Ubuntu.
Я тестирую на Ubuntu 9.10 с Chrome 5.0.342.7 беты и MAC OSX 10.6.2 с Chrome 5.0.307.9 бет.
Маленький набор 3 файлов может быть загружен в tar/gzip файле отсюда: http://issues.tauren.com/testjson/testjson.tgz
Когда это будет работать, консоль Chrome скажет:
XHR finished loading: "http://issues.tauren.com/testjson/data.json".
index.html:16Using getJSON
index.html:21
Object
result: "success"
__proto__: Object
index.html:22success
XHR finished loading: "http://issues.tauren.com/testjson/data.json".
index.html:29Using ajax with json dataType
index.html:34
Object
result: "success"
__proto__: Object
index.html:35success
XHR finished loading: "http://issues.tauren.com/testjson/data.json".
index.html:46Using ajax with text dataType
index.html:51{"result":"success"}
index.html:52undefined
Когда это не будет работать, консоль Chrome покажет это:
index.html:16Using getJSON
index.html:21null
index.html:22Uncaught TypeError: Cannot read property 'result' of null
index.html:29Using ajax with json dataType
index.html:34null
index.html:35Uncaught TypeError: Cannot read property 'result' of null
index.html:46Using ajax with text dataType
index.html:51
index.html:52undefined
Заметьте, что это даже не показывает запросы XHR, хотя обработчик успехов выполняется. Я клянусь, что это работало ранее в Ubuntu/Chrome и волнуется, что что-то было испорчено. Я уже удалил и переустановил Chrome, но это не помогло.
Кто-то может испытать его локально в Вашей системе Ubuntu и сказать мне, если Вы испытываете какие-либо затруднения? Обратите внимание, что это, кажется, хорошо работает в Firefox.
Это известная проблема Chrome.
Вот ссылка в системе отслеживания ошибок:
Проблема 40787: Локальные файлы не загружаются с помощью Ajax
@Mike На Mac введите это в Терминале:
open -b com.google.chrome --args --disable-web-security