2014-09-25 4 views
0

Я пытаюсь получить данные времени от json с приведенным ниже кодом, но вместо данных я получаю сообщение об ошибке, что может произойти?Ошибка при получении данных json

$.ajax({ 
    type: "POST", 
    url: "http://www.previsaodotempo.org/api.php?city=Rio+De+Janeiro", 
    success: function(data) { 
     alert() 
     data.location; 
     $("div").html(data); 
    }, 
    error: function(data) { 
     $("div").html('can not get the json'); 
    } 
}); 

Вот скрипка: http://jsfiddle.net/jodgjqwf/

+4

Откройте вашу консоль! Заголовок 'No 'Access-Control-Allow-Origin' присутствует на запрошенном ресурсе.' – tymeJV

+0

его из-за запроса перекрестного домена –

+1

«Я получаю сообщение об ошибке» - он обычно помогает, если вы (а) Поделитесь с нами ошибкой при запросе для справки и (б) Google сначала – Quentin

ответ

-1

ли http://www.previsaodotempo.org/api.php?city=Rio+De+Janeiro ожидал, что ты POST к нему? Я просто ударил по URL-адресу, и он вернул мне JSON.

Изменить «POST» на «GET».

$.ajax({ 
    type: "GET", 
    url: "http://www.previsaodotempo.org/api.php?city=Rio+De+Janeiro", 
    success: function(data) { 
     $("div").html(data); 
    }, 
    error: function(data) { 
     $("div").html('can not get the json'); 
    } 
}); 
+1

даже с GET или POST, если пользователь не находится в том же домене, или сервер использует CORS, запрос будет терпеть неудачу из-за ограничений перекрестного домена. –

+0

@PatrickEvans Это правда. Я считаю, что они, вероятно, делают запрос из своего домена. Я мог ошибаться, но я уверен, что они не используют jsfiddle для производства;) – teewuane

+1

http://jsfiddle.net/jodgjqwf/1/ - Это изменение не исправляет. – Quentin

Смежные вопросы