XMLHttpRequest не может загрузить URL. Происхождение не разрешено Access-Control-Allow-Origin

Я хочу сделать небольшой сайт, который использует данные XML из другого домена. (Данные о погоде от Weather Underground: www.wunderground.com). Я использую только html и javascript и пишу все это в Visual Studio Express 2012 для Web.

Я делаю и отправляю запрос xml следующим образом:

url = "http://api.wunderground.com/api/3c6e3d838e217361/geolookup/conditions/forecast/q/51.11999893,-114.01999664.xml";

xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", url, false);
xmlhttp.send();
xmlDoc = xmlhttp.responseXML;

Проблема в том, что я получаю следующую ошибку в консоли разработчика Google Chrome (версия 29.0.1547.66):

XMLHttpRequest cannot load http://api.wunderground.com/api/3c6e3d838e217361/geolookup/conditions/forecast/q/51.11999893,-114.01999664.xml. Origin http://localhost:49933 is not allowed by Access-Control-Allow-Origin. 

Или это на консоли Internet Explorer (версия 10.0.8):

SEC7118: XMLHttpRequest for http://api.wunderground.com/api/3c6e3d838e217361/geolookup/conditions/forecast/q/51.11999893,-114.01999664.xml required Cross Origin Resource Sharing (CORS). 

Как я понял, CORS (http://enable-cors.org/) требует усилий как клиента, так и сервера для работы. Я хочу предположить, что Weather Underground API знает, что он делает, и включил все соответствующим образом, например, установив заголовок ответа, чтобы включить «Access-Control-Allow-Origin: *», и я знаю, что у меня возникают те же проблемы, когда Я пытаюсь использовать тот же код, используя другой провайдер API (World Weather Online). Поэтому я думаю, что это то, что я должен исправить в своем клиентском коде. Другой SO ответ, где предлагается исправить заголовок на стороне сервера:CORS с XMLHttpRequest

Я пытался найти ответы, но не понимаю такие статьи, как:http://dev.opera.com/articles/view/dom-access-control-using-cross-origin-resource-sharing/ http://saltybeagle.com/2009/09/cross-origin-resource-sharing-demo/

Ответы на вопрос(1)

Ваш ответ на вопрос