Я только что получил доступ API к Google Translate API v2, и я использую мой ключ API в запросе AJAX, но я получаю эту ошибку:
XMLHttpRequest не может загрузить
https://www.googleapis.com/language/translate/v2?key=[myKey]&source=zh-CN&target=en&q=%E6%82%A8%E5%A5%BD%E4%B8%96%E7%95%8C%0A.
Происхождение http://[mySub].dyndns.org запрещено
Access-Control-Allow-Origin.
Я прочитал все подобные посты, но до сих пор не могу понять, в чем проблема. Обратите внимание, что выполняются следующие условия:
- Я размещаю это на своем собственном сервере Apache дома через dyndns.org, поэтому я не использую ссылку на локальный файл в браузере. На самом деле у меня есть http://[mySub].dyndns.org, который соответствует сообщению об ошибке, и я не использую никаких фанк-портов. Я использую порт 80. Однако сервер и клиент - это один и тот же компьютер.
- Я использую Google Chrome 13.0.782.220 m в Windows. Я не вижу этой ошибки в IE или Firefox, но функция обратного вызова также не работает в этих браузерах.
- Ссылка в сообщении об ошибке действительно работает нормально.
Вот мой JQuery ...
$.ajax({
url: 'https://www.googleapis.com/language/translate/v2',
datatype: 'json',
data: {
key: '[myKey]',
source: 'zh-CN',
target: 'en',
q: '您好世界' // Hello world
},
success: function(data) {
console.log(data);
},
failure: function() {
console.log('failure');
}
});
Надеюсь, это что-то очевидное!