mirror of
				https://github.com/esp8266/Arduino.git
				synced 2025-11-03 14:33:37 +03:00 
			
		
		
		
	* update examples * fix serial<->tcp example, use STASSID instead of SSID (name collision) * fix HTTPSRequest.ino * update AxTLS HTTPS examples, update AxTLS API to deprecated * fixes * fixes + fix astyle (no preproc directives) + restyling script * fix HTTPClient library * fixes * common.sh: do not reload arduino when already present (for locally CI testing) * common.sh: do not reload ArduinoJson when already present (for locally CI testing) * fix * fix * fix deprecated example * fix WiFiHTTPSServer.ino * reduce footprint * wipfix * fix led builtin * fix example * finished updating APSSID on all examples * style * restyle examples * helper to run CI test locally * local CI runner more verbose * +const * deprecation deprecation * deprecation * Update NTPClient.ino const char[] => const char * * Update interactive.ino const char[] => const char *
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
/*
 | 
						|
  HTTP Advanced Authentication example
 | 
						|
  Created Mar 16, 2017 by Ahmed El-Sharnoby.
 | 
						|
  This example code is in the public domain.
 | 
						|
*/
 | 
						|
 | 
						|
#include <ESP8266WiFi.h>
 | 
						|
#include <ESP8266mDNS.h>
 | 
						|
#include <ArduinoOTA.h>
 | 
						|
#include <ESP8266WebServer.h>
 | 
						|
 | 
						|
#ifndef STASSID
 | 
						|
#define STASSID "your-ssid"
 | 
						|
#define STAPSK  "your-password"
 | 
						|
#endif
 | 
						|
 | 
						|
const char* ssid = STASSID;
 | 
						|
const char* password = STAPSK;
 | 
						|
 | 
						|
ESP8266WebServer server(80);
 | 
						|
 | 
						|
const char* www_username = "admin";
 | 
						|
const char* www_password = "esp8266";
 | 
						|
// allows you to set the realm of authentication Default:"Login Required"
 | 
						|
const char* www_realm = "Custom Auth Realm";
 | 
						|
// the Content of the HTML response in case of Unautherized Access Default:empty
 | 
						|
String authFailResponse = "Authentication Failed";
 | 
						|
 | 
						|
void setup() {
 | 
						|
  Serial.begin(115200);
 | 
						|
  WiFi.mode(WIFI_STA);
 | 
						|
  WiFi.begin(ssid, password);
 | 
						|
  if (WiFi.waitForConnectResult() != WL_CONNECTED) {
 | 
						|
    Serial.println("WiFi Connect Failed! Rebooting...");
 | 
						|
    delay(1000);
 | 
						|
    ESP.restart();
 | 
						|
  }
 | 
						|
  ArduinoOTA.begin();
 | 
						|
 | 
						|
  server.on("/", []() {
 | 
						|
    if (!server.authenticate(www_username, www_password))
 | 
						|
      //Basic Auth Method with Custom realm and Failure Response
 | 
						|
      //return server.requestAuthentication(BASIC_AUTH, www_realm, authFailResponse);
 | 
						|
      //Digest Auth Method with realm="Login Required" and empty Failure Response
 | 
						|
      //return server.requestAuthentication(DIGEST_AUTH);
 | 
						|
      //Digest Auth Method with Custom realm and empty Failure Response
 | 
						|
      //return server.requestAuthentication(DIGEST_AUTH, www_realm);
 | 
						|
      //Digest Auth Method with Custom realm and Failure Response
 | 
						|
    {
 | 
						|
      return server.requestAuthentication(DIGEST_AUTH, www_realm, authFailResponse);
 | 
						|
    }
 | 
						|
    server.send(200, "text/plain", "Login OK");
 | 
						|
  });
 | 
						|
  server.begin();
 | 
						|
 | 
						|
  Serial.print("Open http://");
 | 
						|
  Serial.print(WiFi.localIP());
 | 
						|
  Serial.println("/ in your browser to see it working");
 | 
						|
}
 | 
						|
 | 
						|
void loop() {
 | 
						|
  ArduinoOTA.handle();
 | 
						|
  server.handleClient();
 | 
						|
}
 |