Middleware в случае с HTTP-сервером в Node.JS — это промежуточный код, который выполняется до того, как начнёт выполняться ваш основной код. Это, чаще всего, нужно для того, чтобы сделать какой-то дополнительный тюнинг или проверку входящего запроса. Например, чтобы превратить данные из POST-запроса в формате JSON-строки в обычный объект, или получить доступ к кукам в виде объекта, и т.п.
User
Что было, если бы не было налогов?
2 min
15KЭто очень короткий пост об идее, которая у меня родилась очень давно. Лично я вижу в ней огромный потенциал. Особенно, если учесть, что Банк России собирается внедрять крипто-рубль. Суть её в том, что государство могло бы заменить налоги процентами за переводы денег — так же, как это происходит во всех платёжных системах.
+1
Upwork меняет сумму комиссии
4 min
28KВсем привет. Если вы работаете с клиентами через Upwork (раньше биржа называлась oDesk), то обязательно должны знать о будущих изменениях в комиссиях сервиса. В данный момент действует фиксированная ставка комиссии в 10%. Однако, с июня 2016-го она начнёт варьироваться от 5% до 20%. Те фрилансеры, которые занимаются небольшими и недорогими проектами, не работая с одним и тем же клиентом больше одного раза, теперь будут платить не 10% с заработка, а 20%.
+19
Как сделать JSON Vulnerability Protection в ответе сервера под Yii2
2 min
5.8KTutorial
В AngularJS реализована поддержка JSON Vulnerability Protection, направленная на то, чтобы противодействовать ситуациям, когда злоумышленник может, при определённых условиях, превратить JSON в JSONP и выполнить какой-то код. В качестве меры противодействия на серверной стороне предлагается добавлять к JSON-данным такой префикс:
Под катом — моя короткая история генерации JSON-данных с префиксом. Но, я думаю, эта история так же хорошо иллюстрирует и более общий вопрос — как можно добавлять свои собственные форматы ответов сервера. В Yii Framework это делается довольно-таки просто — для этого достаточно описать в конфигурации, какой класс будет отвечать за генерацию ответа определённого формата.
)]}',
Под катом — моя короткая история генерации JSON-данных с префиксом. Но, я думаю, эта история так же хорошо иллюстрирует и более общий вопрос — как можно добавлять свои собственные форматы ответов сервера. В Yii Framework это делается довольно-таки просто — для этого достаточно описать в конфигурации, какой класс будет отвечать за генерацию ответа определённого формата.
+10
Почтовый домен thebat.net закрывается
3 min
13KПримерно лет пять назад у владельцев лицензионной версии TheBat! появилась возможность заиметь ящик в домене thebat.net. Компания Ritlabs не заводила для этого свой личный почтовый сервер, воспользовавшись бесплатной на тот момент возможностью привязывать к Gmail собственные доменные имена. Но
+19
Проект «Outernet» определился с тем, как они не будут цензурировать информацию
4 min
8.5KСоздатели «Outernet» ведут довольно-таки агрессивную PR-кампанию и, порой, делают очень громкие заявления о своих целях. Не менее агрессивно они редактируют контент на официальном сайте, когда текущие действия начинают идти в разрез с прошлыми заявлениями. В самом начале они очень сильно напирали на то, что Outernet будет доступен на любом устройстве с Wi-Fi. Немного позже они перестали на это напирать и сделали Lantern — увы, без «фонаря» (или набора из спутниковой тарелки и кучи дополнительного оборудования) Outernet «поймать» невозможно. В тот момент я обратил внимание, что начался большой упор на то, что в Outernet не будет цензуры — на официальном сайте это часто повторялось. Сейчас уже не повторяется. Настораживает одна вещь: прямо сейчас они напирают на то, что Outernet всегда будет «free». Если задуматься, в будущем всех с большой вероятностью ждёт абонентская плата за использование Outernet (хотя, и я немного позже это упомяну, уже сейчас слышны осторожные разговоры о возможном «премиум»-контенте).
Итак, подробнее о том, как в данный момент обстоят дела с цензурированием.
+8
Долой абсолютные единицы в иконках-спрайтах
2 min
24KСпрайты — классный способ сократить количество запросов к серверу. Можно упаковать кучу иконок в один спрайт и прописать в CSS смещения для каждой иконки. Однако, очень неудобно, что нужно попиксельно всё это считать. Пиксели — значит никакой динамики. Если использовать пиксели, то кусочек спрайта будет отображаться фиксированным размером — независимо от того, выводится он внутри параграфа, или внутри заголовка. Это неправильно, мне кажется, и неудобно. Но, похоже, я нашёл интересный способ выводить иконки динамического размера.
+24
Используйте поиск по хешу, а не обыск массива
3 min
29KTranslation
Довольно-таки часто встречается задача: проверить, совпадает ли строка с другими строками из набора. Например, вам нужно проверить каждое слово из сообщения на форуме на предмет того, не содержится ли оно в списке запрещённых. Распространённое решение: создать массив со списком запрещённых слов, а затем с помощью функции
in_array()
делать проверку. Есть способы повысить производительность такого алгоритма.+3
Немного подробнее про проект «Outernet»
4 min
62KБуквально
+19
Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity