• Axios отправляет post шлет options?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    • Если метод – не 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.

    Его задача – спросить сервер, разрешает ли он использовать выбранный метод и заголовки.
    https://learn.javascript.ru/xhr-crossdomain

    Как видите, дело в том, что вы не указали заголовок Content-Type.

    Следом за этим запросом должен идти POST-запрос, если сервер ответил, что всё ок (в вашем случае похоже на то).
    Ответ написан
    2 комментария
  • Чем отличается junior от middle? а Senior?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Вот как это выглядит с т.з. работодателя

    Джун
    - собеседование
    изъясняется исключительно на сленге (большую часть которого не может внятно объяснить), готов в одиночку за неделю написать новую ОС, или две - за полторы, если только для этого не придется учить ассемблер, несмотря на юный возраст уже обладатель прав на обе версии и один бэкап личного сайта с фотографией кошки в розовой рамке и знает, что синглтон - это абсолютное зло, хотя и не может написать его без ошибок.
    - испытательный срок
    долго мудохается с настройками рабочего места, которые регулярно слетают под тяжестью многотысячных плагинов, шелов и скринсейверов, донимает админов, находит две (орфографические) ошибки в документации проекта и один быстрый альтернативный способ сделать форк из SVN, после которого проект, к сожалению, не билдится не только у него, но и у всей команды. Берется все немедленно исправить с помощью другого чудотворного плагина, (неожиданный баг в котором приходится фиксить двум миддлам), после чего насильственно лишается рута, плагинов и шелов и начинает изучать проект под чутким контролем матерящихся миддлов.
    - работа
    научился билдить проект, писать тесты и коммитить, не роняя этим билд, понял смысл многих сленговых выражений, подружился с миддлами и админами, не путается в названиях ключевых технологий, радикально сократил число плагинов, удалил сайт с кошкой, работает.

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

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

    Для начала 3 полезных сайта: 24whois.ru для проверки записей, если не хочется возиться с nslookup, mxtoolbox.com для проверки настроек smtp сервера и pdd.yandex.ru бесплатный DNS сервер.
    Предположим, у Вас есть белый IP 50.100.150.200, по которому доступен будущий почтовый сервер и домен homepage.ru.

    1. Создайте A запись для данного IP адреса. Например, это может быть так:
    Хост: mail.homepage.ru
    Тип: A
    Значение: 50.100.150.200

    2. Создайте для @ MX запись с меньшим приоритетом, чем уже существующие (например, для серверов с приоритетом 10 и 20 основным будет 10) и впишите в неё созданный поддомен:
    Хост: @
    Тип: MX
    Значение: mail.homepage.ru
    Приоритет: 5

    На этом этапе уже можно принимать и отправлять почту, но доверия к Вашему почтовому серверу не будет - ищите все тестовые письма среди спама.

    3. Обратитесь к хостеру, у которого стоит сервер или провайдеру, если сервер дома, чтобы он сделал следующую PTR запись (IP должен быть "перевёрнут"):
    200.150.100.50.in-addr.arpa IN PTR mail.homepage.ru

    4. Настройте SPF на DNS сервере. Например, если у Вас 1 IP - можно указать только его, а почту с остальных объявить недоверенной (~all) или вообще советовать сразу отклонять её (-all).
    Хост: @
    Тип: TXT
    Значение: v=spf1 ip4:50.100.150.200 ~all

    Вот как это выглядит у яндекса: 24whois.ru/?data=_spf.yandex.ru&t=nslookup&dns_type=txt и с раскрытыми IP адресами: 24whois.ru/?data=_spf-ipv4.yandex.ru&t=nslookup&dn...

    5. При помощи mxtoolbox или другого сайта проверьте свой IP на нахождение в чёрных списках и подайте заявки на исключения из них. Вы 99,9% будете хотя бы в одном списке, как минимум надо проверить spamhaus - им многие пользуются.

    6. Желательно на сервере настроить правильный ответ HELO/EHLO: mail.homepage.ru
    Ответ написан
    3 комментария
  • Где найти хороший учебник по Lua?

    @benoni
    программер-любтель, иногда подрабатываю фрилансом
    rutracker.org/forum/viewtopic.php?t=4516286 - от создателя языка. Есть русскоязычный перевод (в этом году вышел).
    Ответ написан
    Комментировать
  • Как на Asp.Net core использовать https соединение?

    Добавляешь в NuGet библиотеку Microsoft.AspNetCore.Server.Kestrel.Https.
    Затем,
    var host = new WebHostBuilder()
    .UseKestrel(options =>
    {
        // options.ThreadCount = 4;
        options.NoDelay = true;
        options.UseHttps("testCert.pfx", "testPassword");
        options.UseConnectionLogging();
    })
    .UseUrls("http://localhost:5000", "https://localhost:5001")
    .UseContentRoot(Directory.GetCurrentDirectory())
    .UseStartup<Startup>()
    .Build();


    Подробнее
    Ответ написан
    Комментировать
  • Какой sass фрейвморки используют react/vue/angular приложения?

    LeeMasagos
    @LeeMasagos
    E-commerce
    UIKit - прекрасная синергия с vue (на их сайте это видно) , но для работы функций требует Jquery
    Element UI - Ничего лишнего, специально сделан под vue. Быстрый, функциональный.
    Ответ написан
    Комментировать
  • Как создать сайт в сети Tor?

    Sanasol
    @Sanasol Куратор тега Веб-разработка
    нельзя просто так взять и загуглить ошибку
    ничем не отличается от обычного сайта, только надо поставтиь тор и сгенерировать домен это в "два клика" делается.

    https://cryptopunks.org/article/create-onion-resou...

    sanasol3j3xbndqa.onion
    Ответ написан
    3 комментария
  • Какие курсы лучше выбрать?

    Во-первых Кантор, а не Контор
    Во-вторых, loftschool - шаражка.
    В-третьих
    В-четвертых, но это уже когда JS приподнимется. Не знаю почему он еще не сделал по нативному JS видео, но хотел. Объясняет великолепно. Есть по ES6 уроки, по React, по Angular и т.д.
    Ответ написан
    8 комментариев
  • Как организовать структуру и деплой проекта с docker?

    @Visphord
    Я сделал чуть по проще (с меньшим кол-вом ручных действий).
    Имеем:
    - c#
    - Stateless-приложения
    - сервер с монгодб (ее не дают увести в докер).
    - TeamCity.

    Что сделал:
    - Собрал билд-агента под mono в докер-контейнере, прокинул туда хостовый докер.
    - Собрал базовый рантайм-контейнер с mono.
    - Настроил билд через билд агента из п.1, при этом сам тимсити генерит Dockerfile (для c# они типовые).
    - Поднял приватный докер registry.
    - после этого тимсити делает docker tag, docker push в приватный репозитарий.
    - на машинках кластера стоит watchtower, который обновляет и перезапускает контейнеры при появлении апдейта (но первый запуск нового сервиса делаю ручками).
    - в самих проектах в гите храню compose файлы со ссылками на другие сервисы\контейнеры\env (с ними пока нет большого понимания - как и куда их правильно деплоить, где хранить - пока валяются в /home/ на каждой машинке в кластере).
    Ответ написан
    2 комментария
  • Как вы планировали своё учебное время?

    @xfg
    В любом длительном деле главное заинтересованность. Вам нужно начать делать любой интересный для вас проект. В процессе, когда вам требуется сделать то или иное для вашего проекта, вы гуглите, читаете, делаете и даже что-то запоминаете. Изначально по любому вопросу будет требоваться гугл, но очень скоро обнаружите, что уже изучили добрую половину API языка javascript, спроектировали и сверстали несколько UI экранов вашего проекта.

    Радуйтесь маленьким победам. Когда вы делаете интересный лично для вас проект, вы понимаете зачем вы сейчас читаете тот или иной материал. Вы практикуетесь, вы решаете реальные задачи. Я никак не планировал учебное время, я 15 лет назад захотел свой сайт, открыл блокнот, нашел в сети учебник по html читал и сразу делал свой сайт. Потом захотел бекенд и открыл php.net, далее возникло желание, чтобы код был не просто лапшой, а имел какую-то структуру так познакомился с различными фреймворками. Потом захотел, на свой код тесты и так познакомился с TDD/BDD. Далее захотел независимую от фреймворка бизнес-логику и так познакомился с DDD. Ну и так далее.

    Английский учил также. Сразу взял интересную мне статью и запоминал все важные незнакомые в ней слова. Иногда что-то о попадавшихся грамматических конструкциях читал если смысл предложения оставался не понятным зная все слова. Важно то, что я никогда не изучал всё сразу, только то, что нужно мне прямо сейчас, для решения моей задачи.

    Если задуматься, все наши предки делали примерно также. Сначала была задача, а только потом они искали решение этой задачи. Человек захотел подняться в небо и только потом, он искал решение. Не наоборот. И это был не боинг.
    Ответ написан
    Комментировать
  • Как реализовать похожий эффект?

    @GreatRash
    1) Находим координаты курсора относительно камеры
    2) Создаём вокруг курсора треугольники при помощи триангуляции Делоне
    3) Для созданных треугольников пишем шейдер рефракции
    4) PROFIT!!!
    Ответ написан
    Комментировать
  • Что учить ASP.NET MVC 5 или ASP.NET Core?

    SuccessVM
    @SuccessVM
    Программирование - творчество
    ASP.NET 5 и ASP.NET Core, это одно и то же, просто Core более позднее название.

    Вот перевод - ASP.NET 5 мертв — представляем ASP.NET Core 1.0 и ....

    Что же касается изучения технологии, то лучше исходить из конкретного проекта и задач, которые будет решать проект. Если это проект, который необходимо поддерживать и он построен на ASP.NET MVC 4, то именно этот подход и изучай. Если же требуется создать новый проект и в качестве сервера выбрана операционная система Linux, то тут выбор может быть за Core или Mono.

    ASP.NET Core - это тренд, изучая его сейчас, можно быть уверенным в будущих заказах или работе, постепенно всё будет стремиться к кроссплатформенности, это же захват новых рынков, ты только представь, сколько специалистов по C#/VB.NET уже существует.

    Если говорить об отличиях, то они безусловно есть, например встроенный DI контейнер или нюансы, касающиеся самой платформы, но если ты уже знаком с ASP.NET MVC 4, то будешь чувствовать себя, как рыба в воде.

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

    UPD. 07/10/2016

    Ещё по теме интересная статья от 25 мая 2016 года, перед конференцией DotNext в Санкт-Петербурге - ASP.NET Core сегодня: за и против
    Ответ написан
    4 комментария
  • Как правильно реализовать API?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Шаг 1, изучаем https://jwt.io/ - на настоящий момент стандарт для аутентификации.
    Шаг 2. Каждое устройство должно иметь уникальный токен. Пользователь должен иметь возможность деавторизовать любое устройство. При смене пароля все токены автоматически стираются.

    Организация хранения токена должна выглядеть примерно так:
    tokens
    - user_id
    - device_id  - при авторизации через браузер можно подставить md5(User-Agent)
    - device_name  - человеко-понятное имя девайса или название браузера
    - token
    - last_used
    - expires_at

    Про API, вместо передачи дополнительного параметра в запросе очень часто используют HTTP-заголовки.
    Наличие множества токенов практически ничем не грозит, разве что небольшим увеличением размера данных.
    Сброс токенов нужен по времени, по смене пароля, значительной смене географии (другая страна и т.п.), при нажатии кнопки Выход и по желанию пользователя (опции Выйти со всех устройств).
    Ответ написан
    12 комментариев
  • Где и как хранить тестовые сайты?

    @tagplus5
    Сервер на digitalocean
    - направляем на него домен *.site.com
    - каждый проект в своем docker контейнере со своим окружением
    - docker контейнер с nginx (прописываем поддомены)
    - контейнер/ы c бд.

    Разворачивать можно с помощью git ruhighload.com/post/Git+%D0%B4%D0%BB%D1%8F+%D1%80%...

    Если много новых проектов, можно сделать автосоздание поддомена для каждого нового контейнера.
    Ответ написан
    Комментировать
  • Как выглядит 128 битное число?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    340 андецеллионов 282 дециллионов 366 нониллионов 920 октиллионов 938 септиллионов 586 секстиллионов 8 квинтиллионов 62 квадриллиона 602 триллиона 462 миллиарда 446 миллионов 642 тысячи 46
    Ответ написан
    Комментировать
  • Как верстать сайты большей ширины, чем твой экран?

    sadisme
    @sadisme
    font-size:30rem
    Вёрстка должна отталкиваться от ширины в 1000px. И если вдруг есть макет в 1600px, то должен быть и макет под 1000px. Если нет, то дизайнер идиот.

    А к вопросу как верстать - media queries, как и для любых адаптивных сайтов.
    Ответ написан
  • Как в Python считать по кругу?

    @n1cew0lf
    Sysadmin
    Бесподобная вики опять помогает:
    https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B4%D...

    Задача Иосифа Флавия. И алгоритм тоже есть :)
    Ответ написан
    1 комментарий
  • Как отлаживать javascript без console.log?

    psixodyb
    @psixodyb
    Хочу, чтобы мой сын стал полубогом Frontend'a
    Видео
    Мне оно помогло научиться дебажить правильно.
    Ответ написан
    Комментировать
  • Насколько C# сейчас подходит для разработки под linux?

    @enavermate
    Нужно!
    Недавно сдали 12 месячный проект. ASP.NET5, MVC-framework, PostgreSQL, KestrelServer (начали проект спустя !4! месяца после выхода оного). Задачи: Сервер + REST API.
    Сначала хотели разместить на Azure, но что-то не заладилось.
    В итоге разместили на Linux'овом сервере.
    5 месяцев - полёт нормальный.
    Мануалов для конфигурирования от MS уже намного больше.
    Так что пишите - уже всё готово!
    Ответ написан
    Комментировать