C ++和头文件压缩的 Web文件

问题描述 投票:0回答:1

我目前正在尝试逐步教自己如何为nodeMCU编写WiFi接口。我使用在github和其他地方找到的代码作为模板来学习每个部分的工作方式。

我现在陷入困境,非常感谢您克服这种心理障碍。我花了很多时间来开发html css和JavaScript代码以在Arduino草图中使用,但是了解此模板如何将网络文件上传到SPIFFS会给我带来各种各样的问题。

#ifndef webfiles_h

#define webfiles_h

#define USE_PROGMEM_WEB_FILES 

#ifdef USE_PROGMEM_WEB_FILES
const char indexhtml[] PROGMEM = {0x1f, 0x8b, 0x08, 0x08, 0xb6, 0x41, 0xf9, 0x5b, 0x02, 0xff, 0x69, 0x6e,...
#endif

void copyWebFiles(bool force){

#ifdef USE_PROGMEM_WEB_FILES

if(settings.getWebSpiffs()){
if(!SPIFFS.exists(String(F("/web/index.html.gz"))) || force) progmemToSpiffs(indexhtml, sizeof(indexhtml), String(F("/web/index.html.gz")));

}
#endif
}
#endif

以上代码本质上是模板的作用。

我想做的是创建我的“ webfiles.h”,但我不理解的特定部分是看起来像这样的代码

const char indexhtml[] PROGMEM = {0x1f, 0x8b, 0x08, 0x08, 0xb6, 0x41, 0xf9, 0x5b, 0x02, 0xff, 0x69, 0x6e,...

什么都是“ 0x1f,0x8b,0x08、0x08 ...”?我以前看过它,但是现在我不得不处理它。我想是时候长大了。

我以为它与您在html中嵌入base64图像的方式类似,但只是带有progmem的字节数组。

如何为我的压缩Web文件生成此数组?

我尝试过:

转换为base64,但显然不一样。

c++
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.