Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá boa tarde pessoal, eu estou querendo utilizar um api de precisão de tempo ( http://developers.agenciaideias.com.br/tempo ), estou utilizando o código abaixo para fazer a requição
$.ajax({
type: 'GET',
url: "http://developers.agenciaideias.com.br/tempo/json/previsao",
dataType: "jsonp",
jsonp: false,
jsonpCallback: "callbackName",
data: {
cidade: "São+Paulo-RJ",
},
success: function(j) {
alert(j.cidade);
}
});
E não está vindo nada, o que será que fiz de errado?
$.ajax({
type: 'GET',
url: "http://developers.agenciaideias.com.br/tempo/json/previsao",
dataType: "jsonp",
jsonp: false,
jsonpCallback: "callbackName",
data: {
cidade: "São+Paulo-RJ",
},
success: function(j) {
alert(j.cidade);
}
});Voce esta utilizando jsonp, mas o retorno é json simples.
tenta usar
$.getJSON(
'http://developers.agenciaideias.com.br/tempo/json/previsao'
{cidade: 'São+Paulo-RJ'},
function(json, textStatus) {
alert(json.cidade);
});Mesmo assim não aparece o Chrome mostra isso:
$.getJSON(
'http://developers.agenciaideias.com.br/tempo/json/previsao',
{cidade: 'São+Paulo-SP'},
function(json, textStatus) {
alert(json.cidade);
});
" XMLHttpRequest cannot load http://developers.agenciaideias.com.br/tempo/json/previsao?cidade=S%C3%A3o%2BPaulo-SP. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://www.colegiopentagono.com' is therefore not allowed access.
"
O que seria isso?
Fran, colocando a cidade na URL ele funciona:
url: "http://developers.agenciaideias.com.br/tempo/json/são paulo-SP"
Esse erro ocorre pela proteção cross-domain.
O ideal é que você verifique se é possível que esse json retorne em formato jsonp. Se não, você vai precisar utilizar CORS.
Então pelo o que pesquisei o servidor que disponibiliza esse link não está com o ( Access-Control-Allow-Origin: * ) abilitado...
https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
HTTP/1.1 200 OK
Date: Mon, 01 Dec 2008 00:23:53 GMT
Server: Apache/2.0.61
Access-Control-Allow-Origin: *
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: application/xml
Ele está retornando JSON: http://developers.agenciaideias.com.br/tempo/json/sao%20paulo
O problema está no Header do site que ao invés de retornar json/texto, ele retorna o download do json.
Porém, o XML está retornando corretamente: http://developers.agenciaideias.com.br/tempo/xml/sao%20paulo
Kd o código Amigo.
Desculpe minha página não carrgou o código.