mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-31 07:03:55 +00:00 
			
		
		
		
	web_server support for v3 (#6203)
This commit is contained in:
		| @@ -44,6 +44,11 @@ def default_url(config): | |||||||
|             config[CONF_CSS_URL] = "" |             config[CONF_CSS_URL] = "" | ||||||
|         if not (CONF_JS_URL in config): |         if not (CONF_JS_URL in config): | ||||||
|             config[CONF_JS_URL] = "https://oi.esphome.io/v2/www.js" |             config[CONF_JS_URL] = "https://oi.esphome.io/v2/www.js" | ||||||
|  |     if config[CONF_VERSION] == 3: | ||||||
|  |         if not (CONF_CSS_URL in config): | ||||||
|  |             config[CONF_CSS_URL] = "" | ||||||
|  |         if not (CONF_JS_URL in config): | ||||||
|  |             config[CONF_JS_URL] = "https://oi.esphome.io/v3/www.js" | ||||||
|     return config |     return config | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -64,7 +69,7 @@ CONFIG_SCHEMA = cv.All( | |||||||
|         { |         { | ||||||
|             cv.GenerateID(): cv.declare_id(WebServer), |             cv.GenerateID(): cv.declare_id(WebServer), | ||||||
|             cv.Optional(CONF_PORT, default=80): cv.port, |             cv.Optional(CONF_PORT, default=80): cv.port, | ||||||
|             cv.Optional(CONF_VERSION, default=2): cv.one_of(1, 2, int=True), |             cv.Optional(CONF_VERSION, default=2): cv.one_of(1, 2, 3, int=True), | ||||||
|             cv.Optional(CONF_CSS_URL): cv.string, |             cv.Optional(CONF_CSS_URL): cv.string, | ||||||
|             cv.Optional(CONF_CSS_INCLUDE): cv.file_, |             cv.Optional(CONF_CSS_INCLUDE): cv.file_, | ||||||
|             cv.Optional(CONF_JS_URL): cv.string, |             cv.Optional(CONF_JS_URL): cv.string, | ||||||
| @@ -152,7 +157,7 @@ async def to_code(config): | |||||||
|     cg.add_define("USE_WEBSERVER") |     cg.add_define("USE_WEBSERVER") | ||||||
|     cg.add_define("USE_WEBSERVER_PORT", config[CONF_PORT]) |     cg.add_define("USE_WEBSERVER_PORT", config[CONF_PORT]) | ||||||
|     cg.add_define("USE_WEBSERVER_VERSION", version) |     cg.add_define("USE_WEBSERVER_VERSION", version) | ||||||
|     if version == 2: |     if version >= 2: | ||||||
|         # Don't compress the index HTML as the data sizes are almost the same. |         # Don't compress the index HTML as the data sizes are almost the same. | ||||||
|         add_resource_as_progmem("INDEX_HTML", build_index_html(config), compress=False) |         add_resource_as_progmem("INDEX_HTML", build_index_html(config), compress=False) | ||||||
|     else: |     else: | ||||||
|   | |||||||
| @@ -358,7 +358,7 @@ void WebServer::handle_index_request(AsyncWebServerRequest *request) { | |||||||
|   stream->print(F("</article></body></html>")); |   stream->print(F("</article></body></html>")); | ||||||
|   request->send(stream); |   request->send(stream); | ||||||
| } | } | ||||||
| #elif USE_WEBSERVER_VERSION == 2 | #elif USE_WEBSERVER_VERSION >= 2 | ||||||
| void WebServer::handle_index_request(AsyncWebServerRequest *request) { | void WebServer::handle_index_request(AsyncWebServerRequest *request) { | ||||||
|   AsyncWebServerResponse *response = |   AsyncWebServerResponse *response = | ||||||
|       request->beginResponse_P(200, "text/html", ESPHOME_WEBSERVER_INDEX_HTML, ESPHOME_WEBSERVER_INDEX_HTML_SIZE); |       request->beginResponse_P(200, "text/html", ESPHOME_WEBSERVER_INDEX_HTML, ESPHOME_WEBSERVER_INDEX_HTML_SIZE); | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ | |||||||
| #include <freertos/semphr.h> | #include <freertos/semphr.h> | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
| #if USE_WEBSERVER_VERSION == 2 | #if USE_WEBSERVER_VERSION >= 2 | ||||||
| extern const uint8_t ESPHOME_WEBSERVER_INDEX_HTML[] PROGMEM; | extern const uint8_t ESPHOME_WEBSERVER_INDEX_HTML[] PROGMEM; | ||||||
| extern const size_t ESPHOME_WEBSERVER_INDEX_HTML_SIZE; | extern const size_t ESPHOME_WEBSERVER_INDEX_HTML_SIZE; | ||||||
| #endif | #endif | ||||||
|   | |||||||
| @@ -23,6 +23,9 @@ logger: | |||||||
| api: | api: | ||||||
|   reboot_timeout: 10min |   reboot_timeout: 10min | ||||||
|  |  | ||||||
|  | web_server: | ||||||
|  |   version: 3 | ||||||
|  |  | ||||||
| time: | time: | ||||||
|   - platform: sntp |   - platform: sntp | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user