2017-08-08 41 views
1

我目前在eclipse中工作,並且正在爲Lumira設計人員製作一個組件。事先我做了一個函數,可以將數據寫入我的數據庫(這個工作正常)。Javascript無法從我的服務器檢索數據

現在我試圖做一個函數來從服務器取回這些數據。問題是我嘗試使用警報或控制檯日誌查看數據,但是每次獲取警報時都不會彈出或爲空,並且控制檯日誌也爲空。但是當我檢查我的網絡時,它總是說所有東西都被取走了,我可以看到我的物體(見下圖)。

我的問題是爲什麼我不能在我的警報或控制檯中看到它們?你可以找到我的代碼和網絡的下方

network

圖像取我試着使用:

getButton.on("click", function() { 
    fetch('https://xxxxxx/myphpfile.php').then(
     function(response){ 
      alert(response) 
      return response.json(); 
     }).then(function(jsonData){ 
      alert(jsonData) 
      //handle json data processing here 
     }); 

的XMLHttpRequest我嘗試過:

var xhr = new XMLHttpRequest(); 
xhr.onreadystatechange = function() { 
    if (xhr.readyState == XMLHttpRequest.DONE) { 
     alert(xhr.responseText) 
     var resp = xhr.responseText 
     arr = JSON.parse(resp); 
     alert(arr); 
    } 
} 
xhr.open('GET', 'https://xxxxxx/myphpfile.php', true); 
xhr.send(null); 
+0

您的網頁與您的服務器上的JS位於同一個域上嗎?你可能有一個CORS問題。 – sjahan

+0

如果網絡選項卡顯示結果不爲空,那麼對我來說沒有CORS問題:) – ValLeNain

+0

在控制檯中是否出現JSON解析錯誤? –

回答

0

好像使用阿賈克斯呼叫爲我做了這項工作

var dataOBJECTNAME=''; 
$.ajax({ 
      url: 'http://your_webservice/GETALL_OBJECTS', 
      data: '', 
      success: function (resp) { 
       dataOBJECTNAME = resp; 

      }, 
      error: function() {} 
     });