2014-06-23 72 views
0

之前,我嘗試此代碼Jsonp請求返回丟失;語法錯誤:缺少;聲明

<body> 
<script> 

$.ajax({ 
    type: "GET", 
    dataType: "jsonp", 
    url: "http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/statistiche/1403508155490", 
    success: function(result) { 
     console.log("SUCCESS"); 
     console.log(result); 
    }, 
    error: function(result) { 
     console.log("ERROR"); 
     console.log(result); 
    } 
});      

</script> 

但響應**語法錯誤:缺少;陳述前**

爲什麼?

回答

1

您所請求返回文本的網址:

{"treniGiorno":2843,"ultimoAggiornamento":1403513918086,"treniCircolanti":524} 

正確返回的文本應該是:

jsonCallback({"treniGiorno":2843,"ultimoAggiornamento":1403513918086,"treniCircolanti":524}); 

也可以考慮加入jsonpCallback參數你的Ajax查詢,像:

$.ajax({ 
    type: "GET", 
    dataType: "jsonp", 
    jsonpCallback: 'jsonCallback', 
    url: "http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/statistiche/1403508155490", 
    success: function(result) { 
     console.log("SUCCESS"); 
     console.log(result); 
    }, 
    error: function(result) { 
     console.log("ERROR"); 
     console.log(result); 
    } 
}); 
+0

在女巫的方式我可以這樣做嗎? – colapiombo

+0

您必須在服務器端執行此操作:如果您無法修改服務器上的請求,那麼您應該詢問開發人員是否有可以傳入查詢字符串的參數它以jsonp格式返回文本。否則是不可能的請求作爲jsonp – ElLocoCocoLoco

+0

我不能修改服務器端,如果我添加「jsonpCAllback」我繼續收到相同的錯誤... – colapiombo

0

這是因爲返回的字符串不是有效的jsonp格式。您可能想要閱讀this