步驟1:代碼
#include
//IP or name of address root: ie: google.com
//NOT google.com/nothing/after/the/dotcom.html
const char* hostGet = “mydatasite.com”;
void postData() {
WiFiClient clientGet;
const int httpGetPort = 80;
//the path and file to send the data to:
String urlGet = “/data/collector.php”;
// We now create and add parameters:
String src = “ESP”;
String typ = “flt”;
String nam = “temp”;
String vint = “92”;
urlGet += “?src=” + src + “&typ=” + typ + “&nam=” + nam + “&int=” + vint;
Serial.print(“》》》 Connecting to host: ”);
Serial.println(hostGet);
if (!clientGet.connect(hostGet, httpGetPort)) {
Serial.print(“Connection failed: ”);
Serial.print(hostGet);
} else {
clientGet.println(“GET ” + urlGet + “ HTTP/1.1”);
clientGet.print(“Host: ”);
clientGet.println(hostGet);
clientGet.println(“User-Agent: ESP8266/1.0”);
clientGet.println(“Connection: close ”);
unsigned long timeoutP = millis();
while (clientGet.available() == 0) {
if (millis() - timeoutP 》 10000) {
Serial.print(“》》》 Client Timeout: ”);
Serial.println(hostGet);
clientGet.stop();
return;
}
}
//just checks the 1st line of the server response. Could be expanded if needed.
while(clientGet.available()){
String retLine = clientGet.readStringUntil(‘ ’);
Serial.println(retLine);
break;
}
} //end client connection if else
Serial.print(“》》》 Closing host: ”);
Serial.println(hostGet);
clientGet.stop();
}
void setup() {
Serial.begin(115200);
}
void loop() {
postData();
delay(10000);
}
第2步:上傳您的代碼
您將需要更新許多參數(shù),并從此處添加WiFiCon()函數(shù)(或相似的東西)。需要更改的參數(shù)是主機,URL和數(shù)據(jù)參數(shù)-我們將在解釋步驟中進行介紹。
在Arduino IDE中打開串行監(jiān)視器。這樣,一旦您的代碼上傳,我們就可以看到來自ESP的串行消息。
使用此處設置的設置上傳代碼。
代碼上傳完畢后,您應該立即開始在串行監(jiān)視器中看到一些消息。如果不這樣做,請關閉ESP的電源,關閉閃光燈模式的開關,然后重新給ESP供電。
代碼上傳后,實際運行ESP所需的操作就是該指導頂部的簡單接線。
步驟3:說明
發(fā)布數(shù)據(jù)的GET方法比POST方法簡單一些,并且可以滿足您的大多數(shù)需求。 GET的好處是,您只需將數(shù)據(jù)構建到URL字符串中即可。
假設您要將數(shù)據(jù)發(fā)送到名為mysite.com的站點。
它有一個處理數(shù)據(jù)的頁面,稱為data.php。
您有兩個要發(fā)送的數(shù)據(jù):name和id。
如果將data.php設置為解析名為“ name”和“ id”的變量,則需要生成的URL為:
mysite.com/data。 php?name = Jimmy&id = 52
請注意,變量與頁面之間用?隔開,而彼此之間用&隔開。您可以通過這種方式發(fā)送很多變量-但是GET往往最適合簡單數(shù)據(jù)類型。如果您需要發(fā)送長文本或更復雜的內(nèi)容,那么我們需要看一下POST方法。
責任編輯:wv
-
Web服務器
+關注
關注
0文章
137瀏覽量
24356
發(fā)布評論請先 登錄
相關推薦
評論