Если следующий код, я не получаю status 200 и responseText. Но этот URL работает: http://api.microsofttranslator.com/V2/Http.svc/GetLanguagesForTranslate?appId=F1B50AB0743B541AA8C07089042D7B57E9B28D25. Также в Wireshark я вижу, что я получаю status 200 и data, что ожидается. В чем проблема с моим кодом Javascript?
status 200
responseText
http://api.microsofttranslator.com/V2/Http.svc/GetLanguagesForTranslate?appId=F1B50AB0743B541AA8C07089042D7B57E9B28D25
data
function btnclick() { var http = new XMLHttpRequest(); var str = ""; http.open('GET', 'http://api.microsofttranslator.com/V2/Http.svc/GetLanguagesForTranslate?appId=F1B50AB0743B541AA8C07089042D7B57E9B28D25', true); http.onreadystatechange = function (evt) { if (http.readyState == 4 && http.status == 200) { alert(http.responseText); } } http.send(null); }
Вы пытаетесь сделать междоменный XHR.Это нарушает та же политика происхождения .
. Вы можете создать прокси на стороне сервера и запросить его с помощью XHR.
Если вы используете AJAX, вы можете использовать версию AJAX для преодоления междоменной проблемы.http://msdn.microsoft.com/en-us/library/ff512404.aspx