随身网盘后端API解析

随身网盘后端API解析

1. API目录

目前项目后端API共计25+3+1+1条,所有APi如下:

/configWifi:保存wifi

/gamelist:列出游戏列表

/backRoot:回到根目录

/lookthis:进入文件夹

/uploadaddFold:upload创建文件夹

/renameFile:重命名

/deleteUploadFile:删除文件

/listaudio:列出音乐列表

/edittxt:编辑txt文件

/modify:修改文件

/wificonnect:模式转换

/get_version:显示默认主页、版本、域名前缀、网络提供和设备IP

/get_storage:显示内存

/get_wifi:显示wifi和热点

/get_video:显示视频列表

/get_RootFile:显示根目录

/get_quickFile:显示上传目录

/get_File:显示当前文件夹

/configFile:修改配置文件

/nameText:配置wifi

/addWifi:增加自连wifi

/deduceWifi:减少自连wifi

/backone:上一级

/configAP:配置热点

/FirstWeb:配置主页

/testFileIO:测试读写

/get_FirstWebis:默认主页

/upload:文件快传的文件上传

/uploadAll:文件总管理的文件上传

/set:设置界面上传头像和壁纸

/update:OTA

onNotFound:非以上指定的默认操作

2. 后端接口程序

void esp32ServerOn(){
  esp32_server.onNotFound(handleUserRequet);      // 告知系统如何处理用户请求
  esp32_server.on("/configWifi",HTTP_GET, configWIFI);   //保存wifi
  esp32_server.on("/gamelist", HTTP_GET, listGame);   //列出游戏列表
  esp32_server.on("/upload",   // 如果客户端通过upload页面
          HTTP_POST,        // 向服务器发送文件(请求方法POST)
          respondOK,        // 则回复状态码 200 给客户端
          handleFileUploadAll);// 并且运行处理文件上传函数
  esp32_server.on("/uploadAll",   // 如果客户端通过allFile页面
          HTTP_POST,        // 向服务器发送文件(请求方法POST)
          respondOK,        // 则回复状态码 200 给客户端
          handleFileUploadAll);// 并且运行处理文件上传函数
  esp32_server.on("/set",   // 如果客户端通过set页面
          HTTP_POST,        // 向服务器发送文件(请求方法POST)
          respondOK,        // 则回复状态码 200 给客户端
          handleFileset);// 并且运行处理文件上传函数
  esp32_server.on("/backRoot", HTTP_GET, backRoot);   //回到根目录
  esp32_server.on("/lookthis", HTTP_GET, lookthisFile);   //进入文件夹
  esp32_server.on("/uploadaddFold", HTTP_GET, uploadaddFold);   //upload创建文件夹
  esp32_server.on("/renameFile", HTTP_GET, renameFile);   //重命名
  esp32_server.on("/deleteUploadFile", HTTP_GET, deleteUploadFile);   //删除文件
  esp32_server.on("/listaudio", HTTP_GET, listaudio);    //列出音乐列表
  esp32_server.on("/edittxt",HTTP_GET,editTxt);   //编辑txt文件
  esp32_server.on("/modify",HTTP_GET,modify);   //修改文件
  esp32_server.on("/wificonnect",changemode);   //模式转换
  esp32_server.on("/get_version", setversion); //显示默认主页、版本、域名前缀、网络提供和设备IP
  esp32_server.on("/get_storage", getStorage); //显示内存
  esp32_server.on("/get_wifi", getWifi); //显示wifi和热点
  esp32_server.on("/get_video", getVideo); //显示视频列表
  esp32_server.on("/get_RootFile", getRootFile); //显示根目录
  esp32_server.on("/get_quickFile", getQuickFile); //显示上传目录
  esp32_server.on("/get_File", handleGetFiles); //显示当前文件夹
  esp32_server.on("/configFile",HTTP_GET, configFile); //修改配置文件
  esp32_server.on("/nameText",HTTP_GET, nameText); //配置wifi
  esp32_server.on("/addWifi",HTTP_GET, addWifi); //增加自连wifi
  esp32_server.on("/deduceWifi",HTTP_GET, deduceWifi); //减少自连wifi
  esp32_server.on("/backone",HTTP_GET, backone); //上一级
  esp32_server.on("/configAP", configAP);         //配置热点
  esp32_server.on("/FirstWeb", FirstWeb);         //配置主页
  esp32_server.on("/testFileIO", testFile);         //测试读写
  esp32_server.on("/get_FirstWebis", FirstWebsend);         //默认主页
  
  //OTA
  esp32_server.on(
    "/update", HTTP_POST, []()
    {
    esp32_server.sendHeader("Connection", "close");
    esp32_server.send(200, "text/plain", (Update.hasError()) ? "FAIL" : "OK");
    ESP.restart(); },
    []()
    {
      HTTPUpload &upload = esp32_server.upload();
      if (upload.status == UPLOAD_FILE_START)
      {
        Serial.printf("Update: %s\n", upload.filename.c_str());
        if (!Update.begin(UPDATE_SIZE_UNKNOWN))
        { // start with max available size
          Update.printError(Serial);
        }
      }
      else if (upload.status == UPLOAD_FILE_WRITE)
      {
        /* flashing firmware to ESP*/
        if (Update.write(upload.buf, upload.currentSize) != upload.currentSize)
        {
          Update.printError(Serial);
        }
      }
      else if (upload.status == UPLOAD_FILE_END)
      {
        if (Update.end(true))
        { // true to set the size to the current progress
          esp32_server.send(200,"text/html","");
          Serial.printf("Update Success: %u\nRebooting...\n", upload.totalSize);
        }
        else
        {
          Update.printError(Serial);
        }
      }
    });

  esp32_server.begin();                           // 启动网站服务
  MDNS.addService("http", "tcp", 80);  
  Serial.println("mDNS responder started");
  Serial.println("HTTP server started");
}

3.数据格式

LICENSED UNDER CC BY-NC-SA 4.0