web сервер помогите усовершенствовать запросы.

Dima85
Offline
Зарегистрирован: 07.01.2013

Ниже вырезка из моего web сервера, хочется усовершенствовать этот участок:

void processCommand(char* command) {
if (strcmp(command, "conf-on") == 0) {
mySwitch.switchOn(1,1);
} else if (strcmp(command, "time-10") == 0) {
mySwitch.switchOff(1,10);
} else if (strcmp(command, "time-20") == 0) {
mySwitch.switchOn(1,20);
} else if (strcmp(command, "time-30") == 0) {
mySwitch.switchOff(1,30);
}
}

Сейчас для обработки комманды нужно отправить get /?time-10 или
/?time-20 тоесть у get запроса менются только цифры 10, 20, 30 можно как-то эти цифры поместить в переменную getvalue. Что бы не дублировать комманды.

Например как-то так:

void processCommand(char* command) {
if (strcmp(command, "conf-on") == 0) {
mySwitch.switchOn(1,1);
} else if (strcmp(command, "time-"+getvalue) == 0) {
    Serial.print("ok");
    Serial.print(getvalue);
mySwitch.switchOff(1,value);
}
}

Но это почему-то не работает, код при компиляции ошибок не выдает, но и работать тоже не хочет, почему?

CityCat
CityCat аватар
Offline
Зарегистрирован: 13.06.2013

Dima85, вот здесь есть пример того что вам нужно ;)

Dima85
Offline
Зарегистрирован: 07.01.2013

Все таки хочется получить какой-то совет именно в моем коде.

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

а почему не использовать библиотеку? https://github.com/sirleech/Webduino я использовал - вполне нормально парсит все переменные из запрососв.

Dima85
Offline
Зарегистрирован: 07.01.2013

NeiroN, спасибо. Замечательная библиотека, перешел на нее.