2012-12-17 107 views
-2

傳遞的數據是JSON,我可以用這個

$.getJSON('http://agrimainfotech.com/test/json/json.php?isbn=9789381626344', function(data) { 

     alert(JSON.stringify(data)); 

    }); 

我能夠使用相同的另一個URL沒有收到它和它的作品。

$.getJSON('http://salespump.pumpstationstudios.com/app/services/getemployees.php', function(data) { 

      alert(JSON.stringify(data)); 

     }); 

是什麼既JSON過去了,我應該怎麼做才能讓第一個URL工作之間的差別。我在服務器中獲得一個數組,然後使用json_encode使其成爲JSON格式。但仍然沒有工作。

+0

這完全取決於服務返回的內容。 – jbabey

+11

第二個是同一個域上的請求嗎?如果不使用JSONP,您將無法進行跨域GET請求。它看起來沒有URL被配置爲支持JSONP。 –

+1

看看你的js控制檯是否有任何錯誤。 –

回答

0

您很可能有跨域問題。如果服務器支持,你可以嘗試使用jsonp。

2

的第一件事是1:

如果你是不是在同一個域中使用JSONP來代替。

salespump.pumpstationstudios.com !== agrimainfotech.com
當涉及到跨域請求。所以如果你從一個到另一個嘗試,它會失敗。

+0

我試過這個但是沒有給出結果, '$ .ajax({url:'http://agrimainfotech.com/test/json/json.php?isbn=9789381626344', dataType:'jsonp', 成功:功能(數據){ 警報(數據); } });' – hablema

+0

@hablema那是因爲你的回報數據** **不JSONP。 – Neal

+0

'$阿賈克斯({ 網址: 'http://agrimainfotech.com/test/json/json.php?isbn=9789381626344', 成功:功能(數據){ 警報(數據); } });' 這不會返回任何東西... – hablema

-1

感謝大家提及關於跨域請求。這對我來說是新的。我通過在服務器php腳本中添加header('Access-Control-Allow-Origin: *');來糾正它。所以現在我可以讓我的電話從我的phonegap應用程序到服務器。