Cara membuat web server menggunakan ESP 8266
webserver merupakan salah satu layanan yang wajib ada ketika kita membuat sebuah website, biasanya webserver ini bisa lokal seperti xampp.untuk webserver lokal ini sifatnya gratis dan hanya bisa diakses secara LAN saja.
tapi kalau anda membuat sebuah website yang bisa diakses oleh semua orang secara online, maka anda perlu webhosting seperti niagahoster atau domainesia.
tapi pada sharing kali ini saya tidak membahas webserver local atau localhost atau membahas webhosting, melainkan saja akan membahas bagaimana cara membuat webserver menggunakan ESP8266.
tujuan utama dari artikel ini adalah bagaimana sebuah mikrokontroller tipe esp8266 difungsikan sebagai webserver yang mana tujuan umumnya adalah kita nanti bisa mengontrol dan memonitoring peralatan menggunakan sebuah web.
langsung saja berikut ini adalah langkah dan cara-caranya:
yang pertama adalah kita akan menggunakan library ESP8266WiFi.h yang berfungsi untuk menghubungkan board esp 8266 dengan peralatan WIFI. untuk lebih detil bagaimana cara menghubungkan ESP8266 silahkan klik link ini.
selanjutnya adalah kita juga akan menggunakan library ESP8266WebServer yang berfungsi untuk mengkonfigurasi sever di ESP8266 dan untuk menangani permintaaan dari user melalui sebuah browser ( HTTP Request ).
secara syntax atau penulisan adalah sebagai berikut ini :
#include "ESP8266WiFi.h"
#include "ESP8266WebServer.h"
selanjutnya adalah kita akan mendeklarasikan sebuah variabel global dimana fungsi dari variabel ini adalah untuk menangani sebuah permintaaan dari browser dengan format HTTP dengan port 80.
ESP8266WebServer server(80);
jangan lupa juga untuk mengaktifkan komunikasi serialnya di esp8266 dengan menggunakan perintah berikut ini :
Serial.begin(115200);
kita juga akan menghubungkan board esp8266 ke jaringan internet dirumah kita melalui WIFI dengan menggunakan perintah atau syntax berikut ini
WiFi.begin("Network name", "Password");
while (WiFi.status() != WL_CONNECTED) { //Wait for connection
delay(500);
Serial.println("Waiting to connect...");
}
kemudian untuk memastikan apakah perangkat ESP8266 kita sudah terhubung ke jaringan atau belum bisa menggunakan perintah dibawah ini :
Serial.println(WiFi.localIP());
setelah anda pastikan bahwa esp8266 terhubung ke WIFI maka langkah selanjutya esp8266 siap untuk menerima permintakan dari client dan berikut ini adalah syntaxnya
server.on("/", handleRootPath);
dan untuk mengirimkan data dari esp8266 ke browser atau ke client bisa menggunakan perintah dibawah ini :
void handleRootPath() {
server.send(200, "text/plain", "Hello world");
}
berikut ini adalah code lengkap dari pembelajaran ini :
#include "ESP8266WiFi.h"
#include "ESP8266WebServer.h"
ESP8266WebServer server(80);
void setup() {
Serial.begin(115200);
WiFi.begin("Network name", "Password"); //Connect to the WiFi network
while (WiFi.status() != WL_CONNECTED) { //Wait for connection
delay(500);
Serial.println("Waiting to connect…");
}
Serial.print("IP address: ");
Serial.println(WiFi.localIP()); //Print the local IP
server.on("/other", []() { //Define the handling function for the path
server.send(200, "text / plain", "Other URL");
});
server.on("/", handleRootPath); //Associate the handler function to the path
server.begin(); //Start the server
Serial.println("Server listening");
}
void loop() {
server.handleClient(); //Handling of incoming requests
}
void handleRootPath() { //Handler for the rooth path
server.send(200, "text/plain", "Hello world");
}