2
我想知道是否有一個技巧,我失蹤了。從Arduino以太網客戶端刪除標題信息獲取
在你正是如此web服務做一個獲取一個Arduino:
if (client.connect("google.com", 80)) {
client.println("GET /service/v2/time HTTP/1.1");
client.println("Host:nimbits-02.appspot.com");
client.println();
delay(1000);
while(client.connected() && !client.available()) delay(1);
while (client.available()) {
c = client.read();
Serial.print(c);
}
client.stop();
client.flush();
}
工作完全正常(調用nimbits時間服務)
此調用的內容主體是我需要什麼,打印結果如上給我:
> HTTP/1.1 200 OK Date: Sat, 02 Feb 2013 17:24:38 GMT Content-Type:
> text/html Server: Google Frontend Content-Length: 13
>
> 1359825878036
所有perfe很好 - 但我必須在arduino上做一些昂貴的字符串處理來獲得消息正文。我只想要1359825878036.有沒有辦法告訴以太網客戶端不讀取頭文件?那會很方便。
我最好的解決辦法,到目前爲止是假設郵件正文始終是最後一個新行字符之後,這似乎很容易出錯:
if (client.connect("google.com", 80)) {
client.println("GET /service/v2/time HTTP/1.1");
client.println("Host:nimbits-02.appspot.com");
client.println();
delay(1000);
while(client.connected() && !client.available()) delay(1);
while (client.available()) {
c = client.read();
response= response + c;
}
int contentBodyIndex = response.lastIndexOf('\n');
if (contentBodyIndex > 0) {
Serial.print(response.substring(contentBodyIndex));
}
client.stop();
client.flush();
}
謝謝,本 - nimbits.com
能否請您提供關於如何做到這一點一些示例代碼? –
示例代碼,它不是答案 – YumYumYum