Используйте Fiddler для проверки фактической полезной нагрузки запроса и ответа от службы bit.ly. Сравните запрос / ответ IE с Chrome, чтобы определить разницу.
Мое (дикое) предположение заключается в том, что служба возвращает вам сообщение об ошибке при отправке запроса Firefox и Chrome из-за различий в том, как браузеры делают запрос. В частности, то, как вы добавляете параметр url, кажется мне немного подозрительным, и я бы на всякий случай зашифровал его.
Обновление: Так что, действительно, заголовки HTTP выявили проблему. : -)
Заголовок Origin добавляется пользовательским агентом, когда он хочет сообщить веб-сайту, что запрос является запросом из разных источников. Очевидно, Chrome недавно добавил поддержку для этого заголовка. И конечно:
Подробности заголовка Origin
все еще дорабатывается. Мы будем обновлять
реализация в Google Chrome как
спецификация развивается на основе
обратная связь от Mozilla и от W3C
и сообщества IETF в целом.
Может оказаться, что в настоящее время вы ничего не можете сделать, чтобы Chrome не отправлял этот заголовок. Кстати, кажется, что заголовок Origin
был впервые представлен Firefox 3.6, и я подозреваю, что вы один из тех людей, которые используют все самые последние и лучшие из всех браузеров. : -)
Кстати, XMLHttpRequest
имеет междоменные ограничения. Итак, мне интересно, не использует ли jQuery.Ajax новый XDomainRequest
на IE8 вместо XMLHttpRequest
.
Но вернемся к вашей проблеме - на данный момент все указывает на то, что единственное доступное решение - это сделать вызов Ajax на ваш сайт и сделать вызов bit.ly с вашего сервера. Не оптимально, я знаю ...