// DELETEメソッドに対応 void handleDelete(){ if(server.args() == 0) return returnFail("BAD ARGS"); String path = server.arg(0); if(path == "/" || !SD.exists((char *)path.c_str())) { returnFail("BAD PATH"); return; } deleteRecursive(path); returnOK(); }
// PUTメソッドに対応 void handleCreate(){ if(server.args() == 0) return returnFail("BAD ARGS"); String path = server.arg(0); if(path == "/" || SD.exists((char *)path.c_str())) { returnFail("BAD PATH"); return; } if(path.indexOf('.') > 0){ File file = SD.open((char *)path.c_str(), FILE_WRITE); if(file){ file.write((const char *)0); file.close(); } } else { SD.mkdir((char *)path.c_str()); } returnOK(); }
void WifiServerinit(void){ if (MDNS.begin(host)) { MDNS.addService("http", "tcp", 80); DBG_OUTPUT_PORT.println("MDNS responder started"); DBG_OUTPUT_PORT.print("You can now connect to http://"); DBG_OUTPUT_PORT.print(host); DBG_OUTPUT_PORT.println(".local"); } // uri,HTTPメソッド,そのメソッドに対応する関数を指定する server.on("/list", HTTP_GET, printDirectory); server.on("/edit", HTTP_DELETE, handleDelete); server.on("/edit", HTTP_PUT, handleCreate); server.on("/edit", HTTP_POST, [](){ returnOK(); }); server.onNotFound(handleNotFound); // ハンドラが割り当てられていない場合に呼び出す関数の設定 server.onFileUpload(handleFileUpload); // ファイルアップロード server.begin(); DBG_OUTPUT_PORT.println("HTTP server started"); }
void set_acc_settings() { returnOK(); }