2016-09-12 159 views
0

我在Ionic 2的一個應用程序中工作,並且將它與node.js服務器連接。 對於發送數據(服務器 - 離子)我發這樣的:.json in Ionic 2

http.createServer(function (req, res){ 
... 
res.end(data); // data is 0 or 1 
} 

離子,我得到這樣的數據:

this.http.post("http://192.168.1.100:8080/post", 'PidoDatosClima' + '_' + this.parameter1) 
      .subscribe(data => { 
       resp=data.json() 
       console.log(resp); 
... 

哪裏RESP是0或1,所以......在這示例工作正常。

我的問題是,當我需要在我的服務器發送更多數據,以便...如果在「res.end(數據)」的數據是字符串「1_2_3」

離子,我得到這個錯誤:

EXCEPTION: SyntaxError: Unexpected token _ in JSON at position 1

有人知道我該如何解決它?

+0

,你能否告訴我們,當你運行你的後服務,你得到了什麼?這可能是數據被返回的方式,但我不想假設。 –

+0

您沒有收到json,因此您可能不會使用json()。也許使用(數據)._ body(私有財產) – misha130

+0

感謝您回覆我。請你能舉一個例子,我已經做了一些測試,但不起作用。提前致謝! – Tecnico

回答

1

您可以嘗試在服務器是這樣的:

var data = { "value" : "1_2_3" }; 

res.end(JSON.stringify(data)); // Now data is an object with the 1_2_3 value 

然後在離子代碼:

this.http.post("http://192.168.1.100:8080/post", 'PidoDatosClima' + '_' + this.parameter1) 
     .map(res => res.json()) 
     .subscribe(data => { 
       console.log(data.value); // Access the value property 
... 
+0

是正確的!非常感謝你!!! – Tecnico