Доброго времени, дорогие читатели!
Хотелось бы поделиться небольшим кусочком кода, который позволяет подгружать файлы JavaScript динамически.
Читать полностью »
Рубрика «ajax» - 12
Делаем динамическую загрузку JavaScript ручками
2012-06-09 в 8:01, admin, рубрики: ajax, javascript, script, метки: ajax, javascript, scriptВ статье рассмотрены вопросы использования AJAX в компонентах, модулях и плагинах Joomla.Читать полностью »
Защита ajax-приложения от Cross Site Request атак (CSRF)
2012-05-28 в 5:33, admin, рубрики: ajax, csrf, jquery, php, token, информационная безопасность, метки: ajax, csrf, jquery, PHP, tokenСовсем недавно у меня появилась задача защитить web-приложение полностью построенное на ajax от CSRF-атак.
Каков же механизм такой атаки? Суть заключается в выполнении запроса с другого сайта под авторизационными данными пользователя. Например, у нас есть действие удаления своего аккаунта example.com/login/dropme. Если защиты от CSRF атаки нет, мы можем на нужном нам сайте разместить тег:
<img src="http://example.com/login/dropme">
Сразу после того как пользователь зайдет на приготовленную нами страницу и подгрузит содержимое img, его аккаунт на example.com будет удален. О защите от этого я расскажу под катом.
Индексация AJAX-сайтов поисковым роботом Яндекса
2012-05-21 в 8:31, admin, рубрики: ajax, индексация, поисковая оптимизация, яндекс, метки: ajax, индексация, яндексРады сообщить, что улучшения индексации AJAX-сайтов Яндекс поддержал изменения в поисковом роботе и правилах обработки им URL таких сайтов.
Технология AJAX пользуется большой популярностью. Однако то, как содержимое страницы «видит» браузер и пользователь, отличается от того, как страницу «видит» робот поисковой системы. Например, пользователь видит удобный интерфейс с динамически подгружаемыми страницами, в то время как содержимое той же страницы для поискового робота может быть пустым или представленным в виде остального статического HTML-контента страницы, для генерации которого не используются скрипты.
При создании AJAX-сайтов могут использоваться URL с #, но такой URL не используется поисковым роботом. Как правило, часть URL после # отсекается. Поэтому вместо URL вида site.ru/#example он обращается к главной странице сайта, расположенной по адресу site.ru. Это значит, что контент страницы может не проиндексироваться и, как следствие, не попасть в результаты поиска.
Теперь вебмастер AJAX-сайта может указать поисковому роботу Яндекса на необходимость индексации, поддержав соответствующую схему в структуре сайта. Для этого нужно:
Javascript BMP Parser
2012-05-16 в 16:31, admin, рубрики: ajax, data processing, file api, html, html5, javascript, обработка изображений, метки: ajax, data processing, file api, html5, javascriptВступление
Еще с появления скриптов для отображения PDF, извлечения информации с MP3 и декодировки H.264 меня очень заинтересовала тема чтения и работы с бинарными данными в JavaScript.
В этом посте хотелось бы рассказать про свои эксперименты и рассмотреть эти возможности на примере «ручного» парсинга и отображения BMP-файлов (а заодно и освежить память о школьных временах работы с BMP на Паскале :) ).
Сразу хочу предупредить, что речь будет идти именно о написании JavaScript самостоятельно, а не его генерации с исходных кодов других языков с помощью какого-либо транслятора типа Emscripten.Читать полностью »
Кармавьюер как слабо связанный модуль к HabrAjax
2012-05-02 в 6:10, admin, рубрики: ajax, greasemonkey, метки: greasemonkey Модуль — это независимый плагин, который может работать без основного скрипта. История данного Кармавьюера начинается с 23 марта 2010 — автор Atilla написал скрипт показа кармы по наведению мыши на имя пользователя. К этому времени существовали другие 2-3 реализации показа кармы и одна — даже с изменением без захода на страницу. Идея быстрого и лёгкого просмотра кармы и рейтинга с использованием сайтового API показалась интересной и быстро была развита до поддержки всех браузеров. После разрушительной смены дизайна и вёрсток страниц в октябре 2011 все кармавьюеры и многие другие скрипты вымерли, как динозавры. Необходимости в кармавьюере не было, потому что скрипт HabrAjax и его предок умели показывать персональную страницу пользователя в фрейме половинной высоты. Загружается дольше, но и содержит больше информации. Реанимирование скрипта показа кармы было отложено на далёкий срок начала интеграции разных скриптов под управлением одного общего. Такое время пришло. Появились скрипты-модули, которые могут работать как независимо, так и интегрироваться с общим. Скачать кармавьюер.
Читать полностью »
расширение для jQuery: Execute Object
2012-04-27 в 10:06, admin, рубрики: ajax, javascript, jquery, метки: ajax, jqueryДелюсь с аудиторий написанным накануне небольшим плагином, который может оказаться полезным и вам. К описанию на гитхабе добавить нечего, поэтому я его просто перескажу.
Плагин позволяет передавать команды манипуляции ДОМом в одном объекте, то есть заменить много вызовов методов одним вызовом функции.
Использование
$.executeObject({"#my_div": ["text", "новый текст"]}) // можно передать объект
$.executeObject('{"#my_div": ["text", "новый текст"]}') // а можно и JSON
Акторы и AJAX
2012-04-25 в 11:28, admin, рубрики: actors, ajax, comet, java, javascript, Песочница, метки: actors, ajax, comet, java, javascriptДля написания программ, выполняющих параллельные вычисления, широко применяются потоки (threads). При том, что потоки позволяют достаточно гибко организовывать парраллелизм в программах, они обладают рядом недостатков.Дело в том, что потоки разделяют между собой память. Это значит, что очень легко по неосторожности нарушить целостность программы. Побороть это можно с помощью блокировок, которые позволяют некоторому коду получать эксклюзивный доступ к обшему ресурсу. Однако, сами блокировки, помимо того, что их нужно не забывать проставлять, порождают в свою очередь проблемы. Одна из самых страшных проблем — это возможность породить deadlock. Впрочем, даже без этого написание действительно хорошо работающей многопоточной программы превращается в ювелирный труд.
Но у потоков есть альтернативы. Из известных мне — модель акторов (actors) и software transaction memory. Героем этой статьи, как понятно из заголовка, являются первые. Впрочем, по STM есть достаточно много статей в интернете, которые удовлетворят ваше любопытство.
Вкладка «Всё» от 23 апреля — просмотр вопросов и ответов без перезагрузки страниц
2012-04-25 в 3:30, admin, рубрики: ajax, greasemonkey, HabrAjax, хабрахабр, метки: HabrAjaxОбновление. Как известно, раньше потоки статей и вопросов-ответов существовали раздельно, а теперь авторизованные пользователи могут использовать вкладку «Всё» для просмотра смеси заголовков тех и других потоков. С юзерскриптом HabrAjax новой версии 0.85, от 25 апреля возможно смотреть не только заголовки, но и содержание без перезагрузки страниц. Достаточно кликнуть по заголовку или по кнопке ответов. Просмотрев статью, вопрос или комментарии к ним, по широкой кнопке «Свернуть» сворачиваем просмотренное.
Необходимые переделки затронули и ZenComment — юзерстили для Хабра.
Читать полностью »
Рецепты от ПанГурмана
2012-04-24 в 10:21, admin, рубрики: ajax, django, тесты, метки: ajax, Django, тестыНедавно запустили сервис по бронированию ресторанов ПанГурман. Внутри это более-менее типичный django-сайт. Попробую рассказать, как там что устроено (с картинками). В статье не будет ничего супер-хитрого, но, надеюсь, кому-нибудь пара трюков или идей покажутся полезными и как-то упростят жизнь.