• Как безопасно передать пароль?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Вариант первый, самый правильный - регистрацию пользователя делать только по https.
    Вариант второй - использовать асимметричное шифрование, для каждого сеанса на сервере генерировать пару ключей, передавать открытый ключ клиенту, на клиенте шифровать этим ключом данные, на сервере расшифровывать закрытым ключом.
    Ответ написан
    Комментировать
  • Как отловить исключение в JS Promise без присваивания отдельной переменной?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    нет возможности вернуть всю цепочку примисов

    Как так? Всегда возвращайте всю цепочку.
    Ответ написан
  • Как узнать текущую версию того или иного плагина в официальном репозитории?

    littleguga
    @littleguga
    Не стыдно не знать, а стыдно не интересоваться.
    Вот как узнать какая версия локальная

    Чтобы узнать версию в репозитории:
    npm info module version
    например
    npm info gulp version

    upd:
    npm outdated
    Ответ написан
    Комментировать
  • Приложение на expressjs и глобальные данные?

    pomeo
    @pomeo
    оно у них так и рекомендуется делать
    github.com/visionmedia/express/wiki/Migrating-from-2.x-to-3.x
    (use middleware + res.locals)
    пример
      app.use(require('connect-flash')());
      // Expose the flash function to the view layer
      app.use(function(req, res, next) {
        res.locals.flash = function() { return req.flash() };
        next();
      })
    
    Ответ написан
    1 комментарий
  • HTTP request header: Origin?

    @egorinsk
    Для отличения ботов от людей можно использовать (так как у вас мутно описаны подробности задачи, пишу все сразу): проверку поддержки Cookie, Expires, Last-Modified, проверку поддержки HTTPS, проверку возможности и правильности исполнения JS/Flash-кода, проверку соответствия версии юзер-агенты и поддерживаемым возможностям, проверку загрузки статических ресурсов, проверку информации о локальных сетевых интерфейсах через Java-апплет, поведенческий анализ (анализ записываемых действий пользователя: например, пользователь должен подвести мышь или указатель фокуса к ссылке, прежде чем перейти по ней), статистический анализ (выявление тенденций), анализ источников запросов (например, запросы из Китая на русскоязычный сайт; запросы с Ip из спам-листов; запросы с IP дата-центров; запросы с компьютеров с открытыми портами прокси), сопоставление клиентской информации с параметрами запроса (например, яваскриптом видна русская локаль и московский часовой пояс на клиенте, а запрос приходит с китайского IP с немецкой локалью в заголовках = используется прокси + средство подмены заголовков).

    Для предотвращения обхода системы необходимо периодически менять анализируемые факторы (чтобы боты, приспособившиеся к старому набору факторов, выдали себя).

    Умная система учитывает все эти факторы, накапливая и анализируя их в соответствие с набором правил. Вряд ли вы осилите сделать тот же объем работы, что например делает команда яндекс-рекламы. Но даже такую систему, как мне кажется, при желании можно обойти, если понимать, как она работает. И если например привлечь к этому делу человека вроде egorinsk и дать ему много денег.

    Предложенный вами способ примитивен и обходится несколькими строчками кода.
    Ответ написан
    Комментировать