.. | ||
examples | ||
library.json | ||
library.properties | ||
LICENSE.md | ||
README.md | ||
RestClient.cpp | ||
RestClient.h |
RestClient for ESP8266
HTTP Request library for ESP8266.
Install
Clone (or download and unzip) the repository to ~/Documents/Arduino/libraries
where ~/Documents/Arduino
is your sketchbook directory.
> cd ~/Documents/Arduino
> mkdir libraries
> cd libraries
> git clone https://github.com/fabianofranca/ESP8266RestClient.git ESP8266RestClient
Usage
Include
#include "RestClient.h"
RestClient(host/ip, [port])
Constructor to create an RestClient object to make requests against.
Use domain name and default to port 80:
RestClient client = RestClient("arduino-http-lib-test.herokuapp.com");
Use a local IP and an explicit port:
RestClient client = RestClient("192.168.1.50",5000);
begin()
Sets up WiFi connection
client.begin("ssid", "password");
Note: you can have multiple RestClient objects but only need to call this once.
RESTful methods
All methods return an HTTP status code or 0 if there was an error.
get(const char* path)
get(const char* path, String* response)
Start making requests!
int statusCode = client.get("/"));
Pass in a string by reference for the response:
String response = "";
int statusCode = client.get("/", &response);
post(const char* path, const char* body)
post(const char* path, String* response)
post(const char* path, const char* body, String* response)
String response = "";
int statusCode = client.post("/", &response);
statusCode = client.post("/", "foo=bar");
response = "";
statusCode = client.post("/", "foo=bar", &response);
put(const char* path, const char* body)
put(const char* path, String* response)
put(const char* path, const char* body, String* response)
String response = "";
int statusCode = client.put("/", &response);
statusCode = client.put("/", "foo=bar");
response = "";
statusCode = client.put("/", "foo=bar", &response);
del(const char* path)
del(const char* path, const char* body)
del(const char* path, String* response)
del(const char* path, const char* body, String* response)
String response = "";
int statusCode = client.del("/", &response);
Full Example
I test every way of calling the library (against a public heroku app)[https://github.com/csquared/arduino-http-test].
You can find the file in File->Examples->ESP8266RestClient->full_test_suite
Debug Mode
If you're having trouble, you can always open RestClient.cpp
and throw at the top:
#define HTTP_DEBUG
Everything happening in the client will get printed to the Serial port.
Thanks
csquared For creating this greate and simple library for Arduino