1. Perl / Говнокод #16668

    −161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    error_response("400 Bad request", "") unless (<> =~ /^GET\s+(.+?)\s+HTTP\/1\.1\r$/);                                                
    my $request_url = $1;                                                                                                               
    log_message "REQUEST $request_url";                                                                                                 
    get_bans() if ($request_url =~ /^\/bans\?auth=$authkey$/);                                                                          
    remove_ban($1) if ($request_url =~ /^\/bans\/(\d+\.\d+\.\d+\.\d+)\/remove\?auth=$authkey$/);                                        
    error_response("404 Not found", "");

    REST API через inetd (на этом серваке нету веб сервера, и ставить его влом). Новая жизнь старых технологий ;)

    Запостил: bormand, 09 Сентября 2014

    Комментарии (14) RSS

    • Первыйнах.

      Что происходит?
      Ответить
      • bormand учит плохому. Следующий этапом будут учить курить.
        Ответить
        • Учить курить маны?
          Ответить
        • А что здесь плохого? С точки зрения клиента этот сервис неотличим от нормального :) Принимает HTTP запросы, отдаёт JSON, крякает как утка.

          Ну разве что аутентификация через анус и удаление записей в GET'е вместо POST'а.
          Ответить
          • >С точки зрения клиента этот сервис неотличим от нормального
            Пока у клиента не появится желание прикрутить чего нить такое.
            Ответить
            • > не появится желание прикрутить чего нить такое
              Не появится, там за эти полгода всего 3 простеньких роута добавилось... Ну и аутентификация по куке вместо говна в параметрах.

              Вызывается этот нёх только другими нашими серверами. API документировано на местной вики, к нему можно спокойно обращаться любой либой, которая умеет HTTP/JSON. Что ещё надо для счастья :)

              Ну и всегда можно поставить вместо этого говнеца на 50 строк нормальный веб-сервер с нормальными скриптами. Просто лениво и на текущий момент нецелесообразно.
              Ответить
              • P.S. Можно было, конечно, какой-нибудь питоний SimpleHTTPServer заюзать... На другом сервере я бы так и поступил... Но трабла в том, что там нету ни питона ни пыхи, стоит ядро 2.4, древние либцы, пёрл с либами каменного века и нету пакетного менеджера. И питон собирать всяко дольше, чем писать этот пиздец скриптец...
                Ответить
                • >что там нету ни питона
                  на линукс не установлен питон??? У меня прям разрыв шаблона.
                  Ответить
                • Для чего его (сервер) вообще поставили?
                  Ответить
                  • Он там давно стоял. И из-за одной сраной PCI'шной железки там нельзя обновить ядро.
                    Ответить
                    • > И из-за одной сраной PCI'шной железки там нельзя обновить ядро.
                      Сразу начинается питу ханик ведра?
                      Ответить
                      • А потом кококомпиляция ядра
                        Ответить
                      • Под 2.6 на неё дров нету, а портировать самому как-то страшно ;( Так что не начинается.
                        Ответить

    Добавить комментарий