2016-09-05 9 views
0

私はESP8266 WiFiモジュールでArduino Leonardoを手に入れました。jQueryの$.get()を使って、オンボードLED(ピン13)をブラウザからオン/オフしています。それは動作しますが、今私はこの呼び出しにデータを返したいと思います。どうしたらいいですか?私はプレーンテキストでそれをコード化し、それを "サーバ"から返さなければならないことを知っていますが、どのように考えているのか分かりません。

これは私のJavaScript/jQueryのラインです:

function setLEDstat(setLED){ 
    $.get("http://192.168.0.222:12345/", {LED:setLED}, function(data){ 
     console.log(data); 
    }); 
} 

そして、これはこれまでのところ、私のArduinoの応答です:

void switchLED(){ 
    int connectionId = Serial1.parseInt(); 
    Serial1.find("LED="); 
    int setLED = Serial1.parseInt(); 
    Serial.println("Conn: " + String(connectionId) + ", LED: " + String(setLED)); 
    if (setLED == 1){ 
    digitalWrite(LED, HIGH); 
    } else { 
    digitalWrite(LED, LOW); 
    } 
    delay(100); 
    Serial1.println("AT+CIPSEND=" + String(connectionId) + ",38"); 
    delay(100); 
    Serial1.println("HTTP/1.1 200 OK\r\nConnection: close\r\n\r\n"); 
    delay(500); 
    Serial1.println("AT+CIPCLOSE=" + String(connectionId)); 
} 

答えて

0

私はHTTPヘッダによる応答を得ることができた(あなたが学びます何か新しい毎日!!)。私のArduinoの関数のコードは、今ではのようになります:

void switchLED(){ 
    int connectionId = Serial1.parseInt(); 
    Serial1.find("LED="); 
    int setLED = Serial1.parseInt(); 
    Serial.println("Conn: " + String(connectionId) + ", LED: " + String(setLED)); 
    if (setLED == 1){ 
    digitalWrite(LED, HIGH); 
    nanoSerial.println("LED=1"); 
    } else { 
    digitalWrite(LED, LOW); 
    nanoSerial.println("LED=0"); 
    } 
    delay(100); 
    Serial1.println("AT+CIPSEND=" + String(connectionId) + ",145"); 
    delay(100); 
    Serial1.println("HTTP/1.1 200 OK"); 
    Serial1.println("Access-Control-Allow-Origin: *"); 
    Serial1.println("Content-Length:05"); 
    Serial1.println("Connection: close"); 
    Serial1.println("Content-Type: application/x-www-form-urlencoded"); 
    Serial1.println(""); 
    Serial1.println("LED=" + String(setLED)); 
    delay(500); 
    Serial1.println("AT+CIPCLOSE=" + String(connectionId)); 
} 

私は、これは必要としている人を支援を期待;)

+0

非常にクール。多くのAPIはJSON(Content-Type:application/json)を返します。これは簡単にjavascriptで消費されます。あなたはそれが働いてうれしい! – leetibbett

関連する問題