• Как отлаживать javascript без console.log?

    inblank
    @inblank
    Full Stack Web Developer
    devtools в Chrome. Ctrl-Shift-I
    Вкладка Sources. Можно комфортно дебажить: брейкпоинты, watcher, стек и т.д.
    Ответ написан
    Комментировать
  • Правильно ли я понял, как работает токен?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Да. Все верно.

    Единственное что добавлю, пересылать токен лучше в заголовках. Причем желательно, поскольку механизм аутентификации нестандартный, в заголовке X-Authorization. Если вы решите хранить токен в куках и передавать его, это желательно должны быть http-only куки (хотя в случае JWT не обязательно) и на сервере должна быть защита от CSRF атак.

    Так же поскольку у нас по сети гуляют по сути креденшелы, важно использовать SSL. Благо сегодня есть lets-encrypt что бы бесплатно получить сертификаты.

    И последнее, что бы обезопасить себя еще, используйте refresh-токены. То есть наш уникальный токен который гуляет в каждом запросе будет иметь ограничение по времени жизни (скажем 5 минут) и для его обновления мы будем использовать refresh-токен. При получении refresh токена клиенту уходит новая пара токен + refresh-токен.

    Таким образом у злоумышленника который перехватил токен пользователя будет окно всего в 5 минут что бы что-то сделать.
    Ответ написан
    13 комментариев
  • Как сделать авторизацию на LDAP Active Directory? Как это вообще работает?

    Rou1997
    @Rou1997
    Что-то вы путаете, Active Directory - это всего лишь хранилище данных о пользователях и т.п., конечно, в ASP.NET к ней обращаются с сервера, а не с клиента (из браузера), что и технически невозможно, в вашем задании тоже имелось в виду обращаться с сервера.
    Ответ написан
    1 комментарий
  • Как взламывают сим-карты?

    NullByte
    @NullByte
    Bad gateway
    Сдается впечатление, что у вас параноидальный психоз. У меня тоже такое бывает. Если вы - не преуспевающий бизнесмен или политдеятель, не террорист, не суперхакер, не шпион или беглец, за которым охотятся власти всех стран и интерпол, а обычный работник какой-то там компании, утром встаете, завтракаете, идете на работу, возвращаетесь, бухаете, смотрите фильмы а потом спать - то хрен вы кому нужны. Ну или вас преследуют Морфиус и Тринити и спешат сообщить, что вы Избранный и вам надо принять для себя важное решение: быть им или остаться в повседневной рутине.
    Про симку: симки взломать реально, если вышеперечисленный абзац к вам не относится, вам есть что скрывать с левой и правой стороны, а факты о слежке все дальше продолжают о себе знать, то скорее всего на ваши симки просто сделали дубликат и пытаются таким образом пробивать вашу личность. Что делать в этой ситуации? Просто отключите смарт, либо выкиньте из него все симки, общайтесь только через вай-фай по ватсаппу, скайпу, телеграму (последний поможет в вашем случае). Ограничьте список контактов. Заюзайте ВПН-услуги, благо в современных смартфонах его можно настроить.
    Эти советы касаются только вашего телефона. Если ваши "агенты" окажутся довольно настойчивыми, то увидя что не получается с этой стороны, начнуть бить с другой.
    Но вообще мне кажется, что эти "студенты" - обычные ученики факультета ИБ и пишут дипломную о защите информации в сотовых сетях, ну а вас просто выбрали как подопытного, вполне возможно через ваш же круг общения :)
    Ответ написан
    13 комментариев
  • Для чего используют абстрактные классы?

    Denormalization
    @Denormalization
    1) Нельзя создать инстанс абстрактного класса.
    2) Методы объявленные как "abstract" - обязательны к реализации. Что дает уверенность в том, что любой наследник будет реализовывать эти методы.
    3) Открыв файл с абстрактным классом, я сразу вижу методы которые у него есть, и которые мне необходимо реализовать. В вашем же примере я не знаю какие методы относятся конкретно к ChildClass, а какие к ClassName.

    Все эти интерфейсы, абстрактные классы и т.д и т.п нужно тогда, когда над проектом работает несколько (много) человек, и проект чуть больше чем "свой мегакрутой бложик".
    Ответ написан
    Комментировать
  • Лучший Collation в MySQL (только англ. язык)?

    Sanasol
    @Sanasol
    нельзя просто так взять и загуглить ошибку
    Всегда и везде UTF-8
    Ответ написан
    2 комментария
  • Как начать фрилансить на C#?

    newross
    @newross
    Product owner
    Полно проектов на Xamarin и бэкэнд. Часто попадаются задачи по Asp.Net. В качестве дополнительного заработка работы достаточно. В качестве основного - нет. Гораздо выгодней будет работать удаленно на одну компанию, чем рыскать в поисках заказов.
    Ответ написан
    9 комментариев
  • Как начать фрилансить на C#?

    Rou1997
    @Rou1997
    Полно заказов для Windows Desktop, это основной язык.
    Ответ написан
    5 комментариев
  • Как начать фрилансить на C#?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    C# - язык использующийся в крупных компаниях, активно использующих инфраструктуру MS. Это практически противоположное фрилансу понятие. Выбрав C#, вы сами по сути вышли из сферы 99% фриланс-проектов, но это не значит что вам нужно учить пхп, C# отличный язык. Ищите нормальную работу или стажировку на нем.

    Мобильная разработка под Win Phone, теряет всякий смысл, так как MS не удалось занять сколько нибудь ощутимую нишу на мобильном рынке. Судя по последним новостям, MS вообще будет сворачивать это направление, и думать над чем-то еще.
    Ответ написан
    7 комментариев
  • Как связать enum с radioButton?

    AxisPod
    @AxisPod
    Из коробки нет. Берите ItemsControl и вперед.
    Ответ написан
    2 комментария
  • Что практичнее изучать ES6 или Typescript?

    @SergeyZelensky-Rostov
    Стоит учить и то и то TypeScript надмножество JS так что лучше разбираться сразу в двух
    Ответ написан
    2 комментария
  • Что практичнее изучать ES6 или Typescript?

    AMar4enko
    @AMar4enko
    Начав использовать типы в TypeScript, с нормальным автодополнением в IDE, тяжело возвращаться обратно - это мой опыт.
    Ответ написан
    Комментировать
  • Почему не получается создать TCP-клиент?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Там в колбэке функции есть аргумент отвечающий за описание ошибок. Воспользуйтесь им что бы понять в чем причина.

    Так же убедитесь что сервер поднят на том порту и на том хосте что нужно. Ну и что он поднят. Проще всего через netcat.
    Ответ написан
    2 комментария
  • Как запустить старую игру на Windows 10?

    @generalx
    Системный администратор
    Dx9 и в режиме совместимости.
    Ответ написан
    5 комментариев
  • Зачем в ES6 get и set?

    mannaro
    @mannaro Куратор тега JavaScript
    Умею профессионально гуглить
    Потому что аксессоры в JS предназначены для того, чтобы задать какую-то логику на геттер или сеттер. Таким образом можно, например, реализовать счетчик того, сколько раз какое-то свойство было изменено и т.п.
    Да и с помощью них можно реализовать такую штуку как:

    var Test;
    (function() {
      var super_priv = 1;
      Test = class {
        get priv() {
          return super_priv;
        }
        set priv(val) {
          super_priv = val;
          return priv;
        }
      };
    })();
    Ответ написан
    2 комментария
  • Как отличить полиморфизм в языках программирования?

    @MiiNiPaa
    Вам нужно хорошую книжку. Это одно из базовых понятий и вряд ли вы изучите этот вопрос на Тостере.

    Начнём с того, что основная идея полиморфизма — одинаково работать со множеством типов.

    Типов полиморфизма много, начиная с самого простого — параметрического полиморфизма, aka перегрузка функций. В Питоне, например, можно написать print x, и получить этот икс на экране. Причём получим разный результат в зависимости от конкретного типа x. В С++ можно писать cout << x, можно писать abs(x), и выполнятся будут разные действия в зависимости от x. В С, к примеру, пришлось бы самому выбирать какую функцию вызвать: abd, fabs, labs... так как в С нет перегрузки функций.

    Динамический полиморфизм работает похожим образом: представьте себе алгоритм, который должен рассчитать общую сумму задолженности. У человека могут быть займы займы разных видов, которые считаются по-разному. Вместо того, чтобы прописывать явный алгоритм действий для каждого типа займов, алгоритм работает с абстрактным типом займов, для которого определена функция Займ.ПосчитатьДолгНаДату(Дата). Конкретный алгоритм расчёта зашит в конкретный тип-потомок Займа, алгоритм лишь спрашивает какая задолженность будет на конкретную дату, и его не колышет какой на самом деле это займ.
    Ответ написан
    1 комментарий
  • Как отличить полиморфизм в языках программирования?

    maaGames
    @maaGames
    Погроммирую программы
    А вот не нужно смотреть презентации, надо читать книжку, хотя бы для чайников. Нельзя про С++ смотреть видосики, надо читать. Без этого никак. Тогда часть вопросов отпадёт, ещё больше вопросов появится...
    Ответ написан
    Комментировать
  • Какие вы знаете хорошие обучаюбщие материалы/курсы по C#, ASP.Net?

    Atanvar
    @Atanvar
    Frontend developer
    Возможности PHP очень ограничены
    Можно пример? ПХП гавнище редкостное, но возможности в вебе у него ни разу не ограничены.
    Ответ написан
    7 комментариев
  • Как убрать возможность просмотра фильмов на компьютере?

    @oni__ino
    Как бы вы не старались, люди найдут как обойти. Принесут свой portable плеер или браузер с установлеными плагинами: сам так делал, ничего проще чем обмануть админов ;-) Можно пустить интернет только через прокси-сервер, и на стороне прокси делать такие ограничения. Ну файлы больше 20мб нельзя скачивать или там еще что-нибудь придумать. Но это борьба с ветром. И с людьми которые не хотят работать.
    Ответ написан
    Комментировать
  • Как добавить скаченную билиотеку в решение с C#?

    Kr0nic
    @Kr0nic
    Пишу код за еду
    Я обычно делаю папку Library на одном уровне с sln. В файле проекта,после добавления библиотеки, должно быть
    <Reference Include="CustomLibrary">
      <HintPath>..\Library\CustomLibrary.dll</HintPath>
    </Reference>

    Это смело можно заливать в гит
    Ответ написан
    4 комментария