Рубрика «web-разработка» - 29

Суперсилы Chrome DevTools - 1

Я работаю в команде Онлайн. Мы делаем веб-версию справочника 2ГИС. Это долгоживущий активно развивающийся проект, в котором JavaScript используется как основной язык как на клиенте, так и на сервере.

Важное место в работе занимают инструменты анализа и отладки приложения. Популярные JavaScript фреймворки как правило обладают собственным инструментарием, заточенным под конкретную идеологию. Наша ситуация осложняется тем, что под капотом Онлайна гудит фреймворк собственного производства — Slot — также находящийся в стадии активной доработки.

В этой статье я расскажу, как мы используем стандартные браузерные инструменты разработчика для эффективной отладки и исследования. Эти рецепты направлены в первую очередь на изучение приложения снаружи-внутрь, поэтому подойдут для любого проекта.
Читать полностью »

Breeze.js + Entity Framework + Angular.js=удобная работа с сущностями базы данных прямо из браузера - 1  Breeze.js + Entity Framework + Angular.js=удобная работа с сущностями базы данных прямо из браузера - 2  Breeze.js + Entity Framework + Angular.js=удобная работа с сущностями базы данных прямо из браузера - 3

Некоторое время назад на просторах сети столкнулся с интересной библиотекой Breeze.js. Первая мысль, которая пришла на ум при взгляде на неё: «Да это же как Entity Framework для браузера». В поисках информации и отзывов других пользователей, конечно, первым делом поискал статью на Хабре, но не нашёл, поэтому и решил написать, в надежде, что кому-нибудь это тоже будет полезным. Статья написана в виде tutorial по созданию проекта на основе Breeze.js, Angular.js, ASP.NET Web API и Entity Framework.
Читать полностью »

Буквально на днях столкнулся с новым (*?) вариантом спам-вируса для веб-сайтов. Гугл определяет его как «Внедрение через URL».

Описание

На вашем сайте появляются ссылки которых не было и быть не могло — вы, например, четко знаете структуру сайта и оригинальный вид URL, который отличается от «левых» URL. В частности, в индексе поисковиков появляются ссылки вида:

www.site.ru/?jn=xxxxxxxx

Поиск и устранение

Яндекс-Вебмастер пока не реагирует на них, а вот в инструментах Гугла для вебмастеров выдается предупреждение о возможном взломе сайта. Там же даны рекомендации по поиску. К сожалению они довольно общие и конкретный поиск проблемы занимает время. Антивирусы и он-лайн анализаторы сайтов — результата не дают. Только ручками.

Вариант А: Код не обфусцирован

  1. Ищем в исходниках кто и как у нас пользует переменную $_GET['jn']
  2. Далее по коду смотрим кто где гадит (например: jsswfuploadpluginsjquery)

Вариант Б: Код обфусцирован

  1. Ищем каталог с файлами, названия которых идут после "?jn="
  2. Ищем подозрительные исполняемые файлы типа images/c0nfv.php
  3. Проверяем дату jquery.php и сравниваем ее с датой обнаружения вируса по мониторингу инструментов вебмастеров Гугла.

Встречается

  • CMS: Joomla, WordPress, DLE
  • Plugins: ImageZoomer, SWFupload
  • Велика вероятность появления практически во всех плагинах, которые используют JQuery и в тех местах, где у админов ручки не дошли до настройки.

Полный код (необфусцированного) зловредного кода под катом.
Читать полностью »

В первой части статьи был высказан тезис о том, что виной низкого быстродействия создаваемого нами CRM-приложения была SPA-архитектура. Для кого-то такое предположение могло показаться, мягко говоря, неожиданным и даже оскорбительным, учитывая стремительно растущую популярность данного подхода в разработке WEB-приложений, да и мы, как и многие современные разработчики, тоже вполне успешно осваиваем новые технологии, однако на примере данного проекта нам удалось эмпирическим путём нащупать ту грань, где стоит дважды подумать, прежде чем делать ставку на новое, и как раз об этих деталях и пойдёт речь во второй части статьи.
Читать полностью »

Быстрая настройка Grunt для комфортной разработки

Во время разработки нашего сервиса bitcalm.com, нам потребовалось организовать автоматическую сборку проекта. Перед нами стояла цель улучшить производительность frontend-части нашего приложения, а также оптимизировать процессы разработки и развертывания на сервере.

Основными задачами, которые требовалось решить, стали:

  1. Объединение и минификация скриптов
  2. Объединение и минификация стилей
  3. Сжатие png-изображений
  4. Создание спрайтов из всех изображений (с возможностью удобного использования и с поддержкой двух видов спрайтов для девайсов с разным PPI)
  5. Построение разных версий html-документов для разработки и для продакшна

Первые три пункта выглядят достаточно тривиальными, поэтому я постараюсь заострить внимание на работе со спрайтами и на обработке html.

Читать полностью »

Мы в JetBrains искренне считаем, что программирование отнюдь не сводится к простому написанию кода. Программировать — значит постоянно развиваться, приумножать свои знания, совершенствовать навыки, используя при этом самые лучшие инструменты. Если вам знакома притча о двух дровосеках, в которой более искусен оказывается тот, кто не забывает наточить свой топор, то вы поймете наше стремление оттачивать инструменты разработки с каждым следующим релизом. Не стал исключением и последний релиз RubyMine, нашей среды для разработки на Ruby и Rails, о котором мы и хотим рассказать подробнее в этом посте. Кстати, вчера стало доступно для скачивания и первое обновление — RubyMine 7.0.1.

Новая версия RubyMine: Chef, Puppet, EditorConfig и многое другое - 1

Читать полностью »

Вышла новая версия reCaptcha API 2.0 - 1 На днях, занимаясь очередным внедрением reCaptcha для одного из проектов, столкнувшись с небольшой проблемой в области отображения нескольких защитных изображений на 1 странице с помощью AJAX я в очередной раз пошел на страницу официальной документации «reCaptcha» и обнаружил, что документация существенно отличается от предыдущих версий.
Воспользовавшись поиском стало ясным — в мир вышла «recaptcha 2.0» с обновленным API и визуализацией а так же рядом других «плюшек», о чем я и расскажу в данной статье.
Читать полностью »

На этот раз, ХостТрекер обзавелся первым сервером в Южной Америке. Он размещен в городе Санта Фе в Аргентине.

Проверьте uptime Вашего сайт из Южной Америки - 1

Читать полностью »

Что делать, если начальство требует отчет о работе корпоративного сайта? Или же если посетила гениальная мысль о создании чудесного скрипта, который будет делать все-все-все за Вас, вот только для этого нужны данные в соответствующем формате? С сегодняшнего дня ХостТрекер предоставляет расширенный набор форматов отчетов, а также возможность скачать их в любой момент.

Uptime ваших сайтов теперь в PDF - 1

Читать полностью »

Приглашаем на конференцию по web-разработке 29 ноября - 1

Друзья, 29 ноября в московском офисе Mail.Ru Group пройдёт конференция, посвящённая веб-разработке в мобильном и «большом» сегментах сети. Перед слушателями выступят специалисты, работающие в проектах Почта Mail.Ru, Одноклассники, Облако Mail.Ru и Редактор документов.

Программа конференции:

Приглашаем на конференцию по web-разработке 29 ноября - 2Андрей Сумин, руководитель разработки клиентской части Mail.Ru, представит доклад «Редизайн, ни одного пользователя не пострадало».

Мы часто слышим как надо разрабатывать, писать тесты и профилировать программный код. Но редко компании делятся опытом выкатки нового кода на продакшен. Андрей расскажет про этапы выкатки нового дизайна почты на миллионы пользователей.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js