Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

heducose

  • 0
    вклад
  • 25
    вопросов
  • 4
    ответа
  • 0%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Почему не работает .first в lodash?

    sfi0zy
    Ivan Bogachev @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    https://lodash.com/docs/4.17.4#head
    Gets the first element of array.
    Aliases: _.first


    В документации написано, что он возвращает первый элемент массива. Ваш вопрос непонятен.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему не работает .first в lodash?

    twobomb
    twobomb @twobomb
    Он возвращает только первый элемент, даже функция созвучна first(первый). Читай документацию
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Можно ли логинится по ssh под разными айпи из одной консоли?

    icCE
    Vladimir Zhurkin @icCE
    youtube.com/channel/UC66N_jRyZiotlmV95QPBZfA
    Можно ли менять айпи под которым ssh логинится на VPS сервер?
    Т.е. открыл консоль - залогинился под одним айпи на одну машину.
    Открыл вторую - залогинился под другим айпи.


    Самое простое сделать двойной туннель.
    Будет примерно так (Это называется Multiple SSH Tunnels)
    you_ip - other_server1 - need_server
    you_ip - other_server2 - need_server
    итд.

    Да бы тут не расписывать, есть куча примеров в статьях.

    https://www.stableit.ru/2010/10/ssh_19.html

    https://superuser.com/questions/96489/an-ssh-tunne...

    Если мы говорим про ситуацию, когда у вас несколько ip на машине, то нет. SSH не дает выбрать интерфейс или ip с которого можно сделать соединение. Возможно это умеют другие клиенты. dropbear или mosh
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Можно ли использовать flash сообщения без сессий?

    planc
    planc @planc
    бэкендом отдавай json вида :
    {"type": "is-info", "text": "oops"}
    и пихай в компонент на подобие
    https://jsfiddle.net/Linusborg/wnb6tdg8/
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Почему ошибка is not a function?

    twobomb
    twobomb @twobomb
    Нет такой функции submit. Пробуй onsubmit или через
    document.getElementsByTagName('form').addEventListener("submit",function(e){},false);

    PS. document.getElementsByTagName возвращает массив поэтому либо циклом переберите все элементы и повесьте событие, либо выберите только первый
    document.getElementsByTagName('form')[0].addEventListener("submit",function(e){},false);
    это вам не JQUERY
    Ответ написан более трёх лет назад
    13 комментариев
    13 комментариев
  • Как реализовать подтверждение обработки формы?

    kulakoff
    Evgeny Kulakov @kulakoff Куратор тега Vue.js
    Vue.js developing
    А в чем проблема? У вас через ajax обмен идет? Возвратите ответ после обработки сервером. На основании ответа покажите успех/неудачу пользователю.
    Ответ написан более трёх лет назад
    9 комментариев
    9 комментариев
  • Как реализовать подтверждение обработки формы?

    timokins @timokins
    Ваша проблема в том, что Вы пытаетесь отправить ответ через объект res (response), который принадлежит не expressjs, а nodemailer, а он не обладает нужными методами и не отправляет ответ от сервера.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему не работает axios.put + expressjs?

    larisamoroz
    Larisa Moroz @larisamoroz
    Курю маны, втыкаю в код, ваяю, починяю.
    В кросс-доменном XMLHttpRequest можно указать не только GET/POST, но и любой другой метод, например PUT, DELETE.

    Когда-то никто и не думал, что страница сможет сделать такие запросы. Поэтому ряд веб-сервисов написаны в предположении, что «если метод – нестандартный, то это не браузер». Некоторые веб-сервисы даже учитывают это при проверке прав доступа.

    Чтобы пресечь любые недопонимания, браузер использует предзапрос в случаях, когда:

    Если метод – не GET / POST / HEAD.
    Если заголовок Content-Type имеет значение отличное от application/x-www-form-urlencoded, multipart/form-data или text/plain, например application/xml.
    Если устанавливаются другие HTTP-заголовки, кроме Accept, Accept-Language, Content-Language.
    …Любое из условий выше ведёт к тому, что браузер сделает два HTTP-запроса.

    Первый запрос называется «предзапрос» (английский термин «preflight»). Браузер делает его целиком по своей инициативе, из JavaScript мы о нём ничего не знаем, хотя можем увидеть в инструментах разработчика.

    Этот запрос использует метод OPTIONS. Он не содержит тела и содержит название желаемого метода в заголовке Access-Control-Request-Method, а если добавлены особые заголовки, то и их тоже – в Access-Control-Request-Headers.

    Его задача – спросить сервер, разрешает ли он использовать выбранный метод и заголовки.

    На этот запрос сервер должен ответить статусом 200, без тела ответа, указав заголовки Access-Control-Allow-Method: метод и, при необходимости, Access-Control-Allow-Headers: разрешённые заголовки.


    https://learn.javascript.ru/xhr-crossdomain
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Можно ли искать по не полной айди в монго?

    larisamoroz
    Larisa Moroz @larisamoroz
    Курю маны, втыкаю в код, ваяю, починяю.
    Вот тут дали ответ:
    https://stackoverflow.com/questions/25677655/find-...

    По-простому:
    { $where: 'this._id.str.match(/00005/)' }
    здесь берётся строковое значение ObjectId , потом уже ищем с помощью MongoRegex
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как сделать фото отправителя?

    z3apa3a
    Владимир Дубровин @z3apa3a
    https://ru.gravatar.com/
    Ответ написан более трёх лет назад
    12 комментариев
    12 комментариев
  • Скрипты с вау-эффектом?

    Boris Köln @BorisKorobkov
    Web developer
    Маленькие девочки, когда добираются до маминой косметички, красятся много и ярко, считая, что чем больше и ярче - тем лучше. Со стороны это вызывает лишь снисходительную улыбку и мысли типа "чем бы дитя не тешилось...".

    Начинающий кодеры, когда узнают про эффекты анимации, прикручивают их все на свою страничку, считая, что чем больше и ярче - тем лучше. Со стороны это вызывает лишь снисходительную улыбку и мысли типа "чем бы дитя не тешилось...".
    Хотите такой реакции посетителей - вперед.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как автоматически деплоить приложение из гита на VPS, после внесения правок?

    Сергей @skozlovf
    Я использую git-deliver. Он создает удаленный репозиторий на сервере и атомарно меняет дерево исходников. Можно запускать свои скрипты в разные этапы деплоя. Минус - надо потратить время, чтобы все настроить.
    Работает примерно так:
    * Делаешь git deliver.
    * Изменения заливаются в удаленный репозиторий на сервере.
    * Выполняются скрипты остановки сервера.
    * Меняются исходники на актуальные.
    * Выполняются скрипты для запуска сервера.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Что такое UI Kit, как их использовать, какой от них профит?

    lukoie
    lukoie @lukoie
    Как и кем это используется на практике в работе?

    Дизайнеры могут покупать для удешевления работы. Также сами заказчики либо верстальщики могут купить юайкит для того чтобы использовать в проекте, которому нужно немного больше чем стандартные бутстраповые элементы.

    Это чисто для дизайнеров, что-ли? Не для кодеров? Что это такое вообще? Набор картинок? Проект в PSD? Готовый код?

    В общем и целом - это примерно проект в ПСД.
    Его могут использовать уже даже на этапе прототипирования.
    Кодеры, которые могут порезать ПСД, или заверстать сайт с ПСД также могут этим пользоваться.

    Если это просто картинки - то на кой черт это вообще кому-то нужно?

    Если для Ваших проектов достаточно стандартных бутстраповых элементов - Вам оно не нужно. Если хотите больше кастомности, но не платить за кастомный дизайн - юайкит. Если Вы наняли дизайнера на кастомный дизайн, но в процессе добавляете функционал приложения - вашему верстуну будет нужен юайкит. Это такой себе брендбук Вашего приложения.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как автоматически деплоить приложение из гита на VPS, после внесения правок?

    e_svirsky
    Evgeny Svirsky @e_svirsky
    Web Developer
    В гитхабе и битбакете есть веб хуки. настраиваете URL который пингунуть, а на этом урле уже на серваке делаете скрипт деплоя. Таким образом после каждого пуша, или другого действий которое тоже можно настроить, будет происходить деплой кода на сервер.
    Ответ написан более трёх лет назад
    6 комментариев
    6 комментариев
  • Что такое UI Kit, как их использовать, какой от них профит?

    idzenski
    Илья Дзенски @idzenski
    Директор по развитию партнерской сети BPMx
    UI Kit используется для того, чтобы дизайнер не тратил время на создание своего Kit при работе над проектом. Например, у тебя есть готовый набор компонентов под sketch - кнопки, формы ввода данных, размеры заголовков, цвета. Тем самым, ты можешь сконцентрироваться на взаимодействии с пользователем, а не на отрисовывании картинок.

    Естественно, Кит больше подходит под сервисы и службы, которые чаще всего "безлики" (например если посмотреть на оформление самого Тостер - это прекрасный пример продукта который можно вывести за счет UI Kit). Чаще всего Kit это набор не картинок, но компонентов дизайн-системы.
    Ответ написан более трёх лет назад
    11 комментариев
    11 комментариев
  • Логин социальными сетями без Passport - какой алгоритм?

    larisamoroz
    Larisa Moroz @larisamoroz
    Курю маны, втыкаю в код, ваяю, починяю.
    https://developers.facebook.com/docs/facebook-login/web
    https://developers.google.com/identity/sign-in/web/
    https://dev.twitter.com/web/sign-in/implementing
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как создать админку для Node?

    larisamoroz
    Larisa Moroz @larisamoroz
    Курю маны, втыкаю в код, ваяю, починяю.
    1. Статистику логинов и т.п. пишете в монгу, хотя можно извернуться и создать такой API при котором все можно будет автоматически логировать в файлы на более низком (и соответственно, менее грузящем систему) уровне (см. п. 4 )
    2. Да
    3. Можно написать админку «с нуля» отдельным backend-модулем на JS, можно использовать готовые библиотеки (типа React.js ) и почти готовые модули (типа https://simov.github.io/express-admin/ ), к которым только дописать свой GUI
    4. Логгеры, конечно, помогут, но они работают довольно медленно по сравнению со встроенной в http-сервер (NGINX, например) возможностью логирования всех запросов (там и IP, и user-agent и много чего)
    5. Можно. Будет грузить. Хотя многое зависит от посещаемости, от сервера и его настроек (память, тип диска, выбор файловой системы и т.п.…)
    6. Долго перечислять. Просто напишите, что вам нужно и получите ответ — можно или нет.

    P.S.: По трудоёмкости настроить какой-нибудь google analytics или yandex будет, конечно, проще и быстрее.
    Но трекеры блокируются определённым % клиентов (антивирусы, ad-block и т.п.…), соответственно, статистика будет неточной.
    Сервером и своим клиентским скриптом можно будет собрать 100% статистики.
    Ответ написан более трёх лет назад
    9 комментариев
    9 комментариев
  • На сколько плоха идея хранить данные о платежах в MongoDB?

    terrier
    terrier @terrier
    На сколько плоха идея хранить данные о платежах в MongoDB?

    Очень плоха и в первую очередь, потому что у вас с ней мало опыта.
    В худшем случае вы рандомно понатыкаете $isolated, findAndModify и тэдэ и получите расползание финансовых данных примерно сразу же. В лучшем - сделаете своими руками некое подобие движка распределенных транзакций ( плохого и забагованного ), а потом опять получите расползание финансовых данных.
    У MongoDB богатая история критических багов, потери данных и огромное количество тонкостей, которое нужно учитывать в реальном продакшне.
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Как выполнить проверку против определенного значения payload в express-jwt?

    DarkRaven
    Александр Кузнецов @DarkRaven
    разработка программного обеспечения
    var jwt = require('express-jwt');
    
    app.get('/protected',
      jwt({secret: 'shhhhhhared-secret'}),
      function(req, res) {
        if (!req.user.admin) return res.sendStatus(401);
        res.sendStatus(200);
      });


    Если я правильно понял, jwt({secret: 'shhhhhhared-secret'}), говорит нам о том, что при доступе к '/protect' нужно применить middleware jwt с настройками {secret: 'shhhhhhared-secret'} и расшифровать HMAC-токен с использованием секретной фразы 'shhhhhhared-secret', потом пихнуть полученную учетку в запрос.

    Внутри же
    function(req, res) {
        if (!req.user.admin) return res.sendStatus(401);
        res.sendStatus(200);
      }
    вы получаете req и пользователя, и проверяете уже доступ на основание данных учетки.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему код перестает работать, после выноса в отдельный контроллер?

    bingo347
    Дмитрий Беляев @bingo347 Куратор тега Node.js
    Crazy on performance...
    во-первых, потому что jwt очевидно возвращает middleware
    во-вторых, внутреннюю функцию никто не вызывает
    правильно так:
    router.post('/demo', jwt({ secret: process.env.SECRET }),Authentication.secret)
    exports.secret = function (req, res) {
        User.findById(req.user.sub, function (err, user) {
          // добавлю еще маленько хорошей практики обработки ошибок:
          if (err) {
            console.log('ERROR')
            res.send('ERROR')
            return;
          }
          res.send({
            eee: req.user,
            hi: 'SECRET test authorization of registered user'
          })
        })
    }
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
Оценили как «Нравится»
  • 1
  • 2
  • Следующие →
Самые активные сегодня
  • Mike_Ro
    Михаил Р.
    • 6 ответов
    • 0 вопросов
  • Drno
    • 5 ответов
    • 0 вопросов
  • SignFinder
    Alexey Dmitriev
    • 5 ответов
    • 0 вопросов
  • mayton2019
    • 5 ответов
    • 0 вопросов
  • Rsa97
    Rsa97
    • 5 ответов
    • 0 вопросов
  • emekhanikov
    Евгений Механиков
    • 3 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации