2017-10-20 71 views
-1

嘿即時嘗試從我的服務器使用角度POST獲取一些數據我得到的參數我發送,我得到了服務器的響應。我只是無法處理我的反應,並實際得到我想要的參數。如果我在控制檯看我如何處理POST響應

我得到這樣的響應:

data from server Response {_body: " {"data":[{"temperature":"20","dispenses":5,"lates…08:36:15","latest_reset":"2017-10-15 08:42:47"}]}", status: 200, ok: true, statusText: "OK", headers: Headers, …} 

我怎麼會去grapping的溫度是多少?或者我應該改變我的返回JSON?請指導我在正確的方向

我的角度代碼:

getCustomerData() 
    { 
     var headers = new Headers(); 
     headers.append('Content-Type', 'application/x-www-form-urlencoded'); 
     let urlSearchParams = new URLSearchParams(); 
     urlSearchParams.append('customerID', this.customerID); 
     //urlSearchParams.append('password', 'wtf'); 
     let body = urlSearchParams.toString() 

     this.http.post('HIDDEN BUT WORKS',body,{headers: headers}).subscribe(data => { 
     // Read the result field from the JSON response. 
     console.log('data from server', data); 
     let jsonResponse = data.json(); 
     //console.log('nextstep',data.temperature); 
     console.log('hmm',jsonResponse._body.data.temperature); 
     //console.log('size',data.toString); 
    },(error) => { 
     console.log('error', error); 

     }); 
    } 

我響應代碼:

while ($stmt->fetch()) {   
      $json[] = array(
      'temperature' => $temperature, 
      'dispenses' => $dispenses, 
      'latest_cleaning' => $latest_cleaning,  
      'latest_reset' => $latest_reset  
      );   
     } 


     $finalresult['data'] = $json; 

     //logToFile('data.log',json_encode($finalresult)); 
     echo json_encode($finalresult); 

回答

1

使用你的代碼,你應該做:

this.http.post('HIDDEN BUT WORKS',body,{headers: headers}) 
.map(response => response.json()) 
.subscribe(data => { 
    console.log('temperature', data[0].temperature); 
}) 

您還可以使用data[0]訪問其他屬性。

+0

刪除我的$ finalresult ['data'] = $ json;你的答案都有效! TY –

1

嘗試這樣的:

this.http.post('HIDDEN BUT WORKS',body,{headers: headers}).map(response => response.json()).subscribe(data => { 
    console.log('data', data); 
}) 
+0

這將返回:data {data:Array(1)}如何訪問溫度參數?例如 –

+0

console.log('temerature',data [0] .temperature);刪除我的$ finalresult ['data'] = $ json後刪除 – Chandru

+0

;你的答案都有效! TY –