Если я не ошибаюсь, вы пытаетесь выполнить Ajax-запрос к домену twitter.com
.
Если ваше приложение само не размещено в этом домене twitter.com
, вы не можете делать запросы Ajax к нему: вы можете только выполнять запросы Ajax к домену, в котором размещено ваше приложение.
Это означает, что если ваш веб-сайт находится на "www.mydomain.com
", вы можете отправлять только запросы Ajax на "www.mydomain.com
".
Не "test.mydomain.com
" и не "www.anotherdomain.com
"
Это связано с ограничением безопасности, реализованным в веб-браузерах, которое называется Same Origin Policy (цитирование) :
политика разрешает запуск сценариев
страницы с того же сайта
чтобы получить доступ к методам друг друга и
свойства без конкретного
ограничения - но препятствует доступу
большинство методов и свойств по всему
страницы на разных сайтах.
Возможное решение этой проблемы может заключаться в использовании прокси на вашем собственном домене, который будет использовать прокси для twitter.com; таким образом, ваш веб-сайт может отправлять запросы на ваш домен, и они будут фактически пересылаться в твиттер; нет проблем с СОП, таким образом.
В качестве пояснения, когда вы говорите «он работал локально»: вы имеете в виду, что у вас есть локальный веб-сервер, и он работал, когда обслуживался с этого сервера? В этом случае это не должно было сработать.
Вы имеете в виду «Открытие файла локально, с чем-то вроде file: //.../myfile.html» в адресной строке браузера - ну, может, в Safari нет одинаковой политики происхождения для локальных документов?
(Не уверен насчет этого - просто возможность)