1
0
mirror of https://github.com/arduino-libraries/ArduinoHttpClient.git synced 2025-04-19 21:22:15 +03:00

Added Custom Header Example (#20)

Added the example posted in #12 to close the PR. Tested and it works
This commit is contained in:
Arturo Guadalupi 2017-01-12 16:10:02 +01:00 committed by Sandeep Mistry
parent 4e21c8497e
commit 767ecf2fe9
2 changed files with 94 additions and 0 deletions

View File

@ -0,0 +1,91 @@
/*
Custom request header example for the ArduinoHttpClient
library. This example sends a GET and a POST request with a custom header every 5 seconds.
note: WiFi SSID and password are stored in config.h file.
If it is not present, add a new tab, call it "config.h"
and add the following variables:
char ssid[] = "ssid"; // your network SSID (name)
char pass[] = "password"; // your network password
based on SimpleGet example by Tom Igoe
header modifications by Todd Treece
this example is in the public domain
*/
#include <ArduinoHttpClient.h>
#include <WiFi101.h>
#include "config.h"
char serverAddress[] = "192.168.0.3"; // server address
int port = 8080;
WiFiClient wifi;
HttpClient client = HttpClient(wifi, serverAddress, port);
int status = WL_IDLE_STATUS;
String response;
int statusCode = 0;
void setup() {
Serial.begin(9600);
while ( status != WL_CONNECTED) {
Serial.print("Attempting to connect to Network named: ");
Serial.println(ssid); // print the network name (SSID);
// Connect to WPA/WPA2 network:
status = WiFi.begin(ssid, pass);
}
// print the SSID of the network you're attached to:
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
// print your WiFi shield's IP address:
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
}
void loop() {
Serial.println("making GET request");
client.beginRequest();
client.get("/");
client.sendHeader("X-CUSTOM-HEADER", "custom_value");
client.endRequest();
// read the status code and body of the response
statusCode = client.responseStatusCode();
response = client.responseBody();
Serial.print("GET Status code: ");
Serial.println(statusCode);
Serial.print("GET Response: ");
Serial.println(response);
Serial.println("Wait five seconds");
delay(5000);
Serial.println("making POST request");
String postData = "name=Alice&age=12";
client.beginRequest();
client.post("/");
client.sendHeader(HTTP_HEADER_CONTENT_TYPE, "application/x-www-form-urlencoded");
client.sendHeader(HTTP_HEADER_CONTENT_LENGTH, postData.length());
client.sendHeader("X-CUSTOM-HEADER", "custom_value");
client.endRequest();
client.write((const byte*)postData.c_str(), postData.length());
// read the status code and body of the response
statusCode = client.responseStatusCode();
response = client.responseBody();
Serial.print("POST Status code: ");
Serial.println(statusCode);
Serial.print("POST Response: ");
Serial.println(response);
Serial.println("Wait five seconds");
delay(5000);
}

View File

@ -0,0 +1,3 @@
char ssid[] = "ssid"; // your network SSID (name)
char pass[] = "password"; // your network password