По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
CORS – это механизм браузера, который позволяет серверам указывать сторонние источники, которые имеют право запрашивать у них ресурсы. Этот механизм обеспечивает безопасность и не дает вредоносным сайтам красть данные, которые принадлежат другим источникам. CORS расшифровывается как Cross-Origin Resource Sharing, что переводится как «обмен ресурсами с запросом происхождения». В случае, когда для загрузки ресурса используется CORS, браузер отправляет предварительный HTTP-запрос  OPTIONS . Сервер должен ответить, указав все источники, с которыми он собирается взаимодействовать. Также он может определить дополнительные ограничения, например, указать HTTP-заголовки, которые могут быть отправлены.  Браузер проверяет текущий источник и исходящий запрос на соответствие спецификациям сервера. Если все проверки были пройдены успешно, то запрос одобряется. В противном случае запрос будет отклонен. Если это произойдет, вы увидите предупреждение в консоли.  Когда используется CORS Браузеры применяют CORS для запросов Ajax и Fetch. Этот механизм также используется для веб-шрифтов, текстур WebGL и отрисовки изображения холста с помощью  drawImage() . CORS также потребуется для любого правомерного запроса к стороннему источнику. CORS не применяется в том случае, если запрос рассматривается как «простой». Простой запрос должен начинаться с  GET ,  HEAD или  POST и иметь тип содержимого  text/plain ,  application/x-www-form-urlencoded или  multipart/form-data . Единственные заголовки простых запросов, которые допускаются, - это  Accept ,  Accept-Language ,  Content-Language и  Content-Type . Если запрос не соответствует всем критериям, которые мы перечислили выше, то современные браузеры запускают CORS. Важно понимать, что CORS – это технология для браузера, и вы не сможете использовать его при самостоятельной отправке запросов, например, с помощью утилиты  curl в своем терминале.  CORS не всегда отправляет предварительный запрос  OPTIONS . Предварительная проверка нужна и используется только тогда, когда запрос может вызвать «побочные эффекты» на сервере. Как правило, это относится ко всем методам запроса, кроме  GET .  Предположим, что есть запрос  POST к /api/users/create . Сервер всегда будет создавать нового пользователя, но при этом браузер может отказать в доступе к ответу на этот запрос, если для запроса был использован CORS. Есть шанс, что сервер может отклонить реальный запрос, если перед этим был отправлен запрос  OPTIONS . Это обеспечивает то, что учетная запись пользователя на самом деле не будет создаваться.  Управление CORS на стороне клиента Несмотря на то, что CORS является технологией для браузера, вы все равно не можете влиять на нее напрямую с помощью клиентского кода. Это гарантирует, что вредоносные скрипты не смогут обойти защиту CORS, чтобы загрузить данные со сторонних доменов.  CORS, как правило, незаметен, поэтому вы даже не будете знать о том, что он работает. Если в процессе CORS произойдет сбой, то ваш код JavaScript увидит обычную сетевую ошибку. Получить точную информацию о том, что пошло не так, невозможно, поскольку это может представлять риск нарушения безопасности. Все подробности записываются в консоль.  Единственный способ устранить сбои CORS – это убедиться, что ваш сервер отправляет корректные заголовки ответов. Теперь давайте посмотрим, как это делается.  Управление CORS на стороне сервера Для начала вам следует убедиться в том, что ваш сервер правильно обрабатывает запросы  OPTIONS . Возможно, вам придется создать новый маршрут обработки запросов в вашей веб-среде. В большинстве случаев вам придется принимать запросы  OPTIONS к каждой конечной точке, которая может получить CORS-запрос от браузера. Ответ не обязательно должен иметь тело, но он должен включать в себя определенные заголовки, которые сообщают браузеру, что делать дальше.  Начните с заголовка  Access-Control-Allow-Origin . Он укажет на сторонний источник, который имеет право взаимодействовать с вашей конечной точкой. Указать можно только один источник; но вы можете обрабатывать несколько источников, динамически устанавливая в качестве значения заголовка источник, из которого был отправлен запрос. Текущий источник можно найти в заголовке запроса  Origin . Access-Control-Allow-Origin принимает * в качестве специального подстановочного символа. Это позволит принимать запросы CORS из всех источников. Здесь следует быть осторожным, поскольку указание разрешенных источников обеспечивает контроль и не дает вредоносным скриптам запрашивать данные с вашего сервера.  Access-Control-Allow-Origin должен быть включен в ответ вашего сервера на реальный запрос и в ответ на запрос  OPTIONS . После того, как этот заголовок будет настроен, будет разрешен базовый обмен данными со сторонним клиентом браузера.  Указание CORS-заголовков  CORS-запросы, как правило, поддерживают только заголовки «простых» запросов, которые были перечислены выше. Если вы хотите использовать какой-то другой заголовок, например,  Authorization или настраиваемый заголовок, то вашему серверу необходимо будет явно разрешить его в ответе на предварительный запрос.  Установите заголовок  Access-Control-Allow-Headers . Его значение – это список названий заголовков через запятую, которые будут приняты с реальным запросом.  Access-Control-Allow-Headers: Authorization, X-Custom-Header Теперь браузер разрешит запросы с заголовками  Authorization или  X-Custom-Header . Браузер отправляет заголовок  Access-Control-Allow-Headers вместе с предварительным CORS-запросом. Он содержит список заголовков, которые будут отправлены с реальным запросом. Ваш серверный код может использовать эту информацию для того, чтобы понять, как нужно ответить на предварительный запрос.  Ограничение на определенные методы запроса Аналогично тому, как мы указываем заголовки запроса, так и конечные точки сервера могут определять, какие HTTP-методы из различных источников будут разрешены. Установите заголовок  Access-Control-Allow-Methods . Его значение – список названий методов через запятую.  Access-Control-Allow-Methods: GET, POST, DELETE Браузер отправляет заголовок  Access-Control-Request-Method с предварительным запросом. Таким образом сервер узнает HTTP-метод, который будет использоваться для выполнения окончательного запроса.  Cookie-файлы и учетные данные CORS-запросы, как правило, не отправляют cookie-файлы, так как в них может содержаться конфиденциальные учетные данные, которые идентифицируют отправителя. Если вам необходимо добавить cookie-файл к запросу на другой источник, то это нужно явно разрешить в клиентском коде: fetch("https://localhost/demo", {    mode: "cors",    credentials: "include" }); К тому же сервер должен установить заголовок ответа  Access-Control-Allow-Credentials: true , чтобы сообщить о том, что он соглашается на обмен cookie-файлами, которые содержат учетные данные.  Если вы используете заголовок  Access-Control-Allow-Credentials , то нельзя использовать подстановочный символ (*) в заголовке  Access-Control-Allow-Origin . Сервер должен явно указать источник для того, чтобы обезопасить конфиденциальность пользователя. Если вы будете использовать подстановочный символ, то браузер не выполнит запрос и вернет ошибку.  Предварительное кэширование Предварительные запросы  OPTIONS усиливают нагрузку на каждый запрос, который вы отправляете. При хорошем соединении задержка должна быть почти незаметной, и все же нерационально вызывать одну и ту же конечную точку раз за разом.  Вы можете указать браузеру кэшировать ответы на предварительные запросы. Для этого вам нужно установить заголовок  Access-Control-Max-Age . Значение этого заголовка – это время, выраженное в секундах. В течение этого времени браузер может хранить кэшированный ответ. Последующие запросы к той же конечной точке в течении заданного периода времени не будут сопровождаться предварительными запросами.  Заключение При первом знакомстве с технологией CORS она может сбивать с толку. Эта технология браузера, которая контролируется ответами сервера. Использование CORS неизбежно, но при этом оно может оказаться неуправляемым, если у вас нет доступа к серверному коду, с которым вы взаимодействуете.  Фактическая реализация CORS довольно проста. Убедитесь, что ваш API или CDN отправляет корректные заголовки ответов, в особенности это касается заголовка  Access-Control-Allow-Origin . Если с этим проблем нет, то у вас будет безопасная связь между источниками, которая поможет избежать вмешательства злоумышленников. 
img
Как стать Python-разработчиком и почему этот язык программирования стал самым популярным Python — самый популярный язык программирования в рейтинге Tiobe. Ребята из этой компании оценивают популярность языков программирования на основе поисковых запросов. Для расчета рейтинга используются популярные поисковые системы, такие как Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube и Baidu.Python широко используется в различных областях благодаря своей простоте, гибкости и богатым библиотекам. Свое название Python получил не в честь змеи, а благодаря Британскому комедийному шоу «Летающий цирк Монти Пайтона». Так что откладываем в сторону шутки про заклинателя змей и попытаемся разобраться, почему Python последние несколько лет стал самым популярным языком, как стать Python-разработчиком и что нужно знать для старта в этой профессии. indian Немного об истории создания Python Автором Python является голландский программист Гвидо ван Россум. Примечательно, что он самостоятельно изучил двенадцать языков программирования, а потом психанул придумал за три недели Python. Одной из базовых идей нового языка было то, что его код должен быть понятен, как простой английский. На нем можно было бы не только писать программы, но и передавать с его помощью идеи между разработчиками. Также язык должен был быть мощным, как основные конкуренты, и подходить для решения повседневных задач. Подробнее об этом можно почитать здесь или посмотреть его интервью для Oxford Union. Где используется Python Гибкость этого языка позволяет использовать его во многих областях программирования и разработки. К примеру, это может быть веб-разработка, научные исследования, анализ данных, разработка и тестирование программного обеспечния и даже маркетинг и социология. Степень использования языка и набор навыков зависят от конкретной профессии и области применения. Вот несколько из них, в которых Python активно применяется: Веб-разработка. Чаще всего Python используют именно в ней. Для этого языка написано уже много фреймворков, например, таких как Django и Flask. Кроме того, на Python работает серверное обеспечение известных компаний: Google, Dropbox, Spotify, Netflix. Исследовательская деятельность при работе с данными. Для таких задач не нужно быть полноценным Python-разработчиком, достаточно знать необходимые инструменты для проведения вычислительных исследований, обработки данных и создания графиков: библиотеки NumPy, Pandas, SciPy, Matplotlib и другие. Тестирование: Python используется для написания тестов, автоматизации тестирования и создания инструментов для обеспечения качества ПО. Автоматизация задач. Python является отличным инструментом для автоматизации рутинных задач, обработки файлов, взаимодействия с операционной системой и создания скриптов. Искусственный интеллект. Нейросети требуют более продвинутого знания Python. Например, для того чтобы предложить вам рекоммендацию в Netflix, Spotify и Яндекс.Музыке, используются нейросетевые технологии и высокая скорость обработки данных. Игровая разработка. Некоторые компьютерные игры полностью или частично были написаны на Python. Он применяется для создания их прототипов и разработки скриптов в некоторых игровых движках. Необходимый набор знаний для старта Для старта в профессии в первую очередь необходимо знать синтаксис языка. Нужно понимать основные правила, по которым пишутся команды, знать, как обозначаются переменные, условия, циклы и функции. Изучить широко используемые библиотеки и фреймворки Python, такие как NumPy, Pandas, Flask и Django. Важно освоить основные инструменты и среды разработки, такие как Git для управления версиями кода. Звучит все это сложно и на первый взгляд невыполнимо. На самом деле начать работать с Python и присоединиться к комьюнити разработчиков довольно просто. На официальном сайте можно скачать все необходимые данные или воспользоваться более удобной сборкой Anaconda. Там можно сразу написать свой первый проект. Кроме того, Merion academy подготовила курс «Python-программист с нуля», где за 4 месяца вы сможете стать разработчиком на одном из самых популярных языков программирования. Рубрика: сколько ты зарабатываешь? Средний размер оплаты труда Python-разработчика на конец 2023 года составляет 265 000 рублей в месяц. На уровень дохода влияей опыт работника. Джуниор-специалисты могут рассчитывать на 30 000—100 000 рублей в месяц. Middle может претендовать на доход от 200 000 рублей, Зарплата Python-разработчика уровня Senior — 300 000—350 000 рублей. oklad Заключение Стать Python-разработчиком может быть увлекательным и достижимым процессом, особенно если у вас есть интерес к программированию и решению задач. Практикуйтесь и не бойтесь сталкиваться с новыми вызовами. Со временем и накопленным опытом, вы сможете реализовать себя в этой профессии. Присоединиться к курсу можно тут
img
Если вы работаете с Windows, структура файловой системы Linux может показаться особенно чуждой. Диск C: и буквы диска исчезли, их заменили каталоги / и загадочно звучащие каталоги, большинство из которых имеют трехбуквенные имена. Стандарт иерархии файловой системы (FHS - Filesystem Hierarchy Standard) определяет структуру файловых систем в Linux и других UNIX-подобных операционных системах. Однако файловые системы Linux также содержат некоторые каталоги, которые еще не определены стандартом. Обратите внимание, что мы не говорим здесь о файловой системе, которая является техническим шаблоном, используемым для хранения данных на диске. Структура каталогов, которую мы рассмотрим, применима к большинству дистрибутивов Linux независимо от того, какую файловую систему они используют. Типы содержимого Это основные типы контента, хранящегося в файловой системе Linux. Постоянный (Persistent) - это содержимое, которое должно быть постоянным после перезагрузки, например, параметры конфигурации системы и приложений. Время выполнения (Runtime) - контент, созданный запущенным процессом, обычно удаляется перезагрузкой Переменный/динамический (Variable/Dynamic) - это содержимое может быть добавлено или изменено процессами, запущенными в системе Linux. Статический контент (Static) - остается неизменным до тех пор, пока не будет явно отредактирован или перенастроен. / - Корневой каталог (root) Все в вашей системе Linux находится в каталоге /, известном как root или корневой каталог. Вы можете думать о каталоге / как о каталоге C: в Windows, но это не совсем так, поскольку в Linux нет букв дисков. В то время как другой раздел будет расположен вD: в Windows, этот другой раздел появится в другой папке в / в Linux. Если вы посмотрите на структуру каталогов, вы поймете, что она похожа на корень дерева. Поскольку все остальные каталоги или файлы происходят от корня, абсолютный путь к любому файлу проходит через корень. Например, если у вас есть файл в /home/user/documents, вы можете догадаться, что структура каталогов идет как root -> home -> user -> documents. /bin - Основные пользовательские двоичные файлы Каталог /bin содержит основные пользовательские двоичные файлы (программы), которые должны присутствовать при монтировании системы в однопользовательском режиме. Приложения, например такие как браузер Firefox, хранятся в /usr/bin, а важные системные программы и утилиты, такие как оболочка bash, находятся в /bin. Каталог /usr может храниться в другом разделе - размещение этих файлов в каталоге /bin гарантирует, что в системе будут эти важные утилиты, даже если другие файловые системы не смонтированы. /bin непосредственно содержит исполняемые файлы многих основных команд оболочки, таких как ps, ls, ping, grep, cp. Каталог /sbin аналогичен - он содержит важные двоичные файлы системного администрирования. /sbin содержит iptables, reboot, fdisk, ifconfig, swapon /boot - Статические загрузочные файлы Каталог /boot содержит файлы, необходимые для загрузки системы - например, здесь хранятся файлы загрузчика GRUB и ваши ядра Linux. Однако файлы конфигурации загрузчика не находятся здесь - они находятся в /etc вместе с другими файлами конфигурации. /cdrom - Точка монтирования для компакт-дисков Каталог /cdromне является частью стандарта FHS, но вы все равно найдете его в Ubuntu и других операционных системах. Это временное место для компакт-дисков, вставленных в систему. Однако стандартное расположение временных носителей находится в каталоге /media. /dev - Файлы устройства Linux представляет устройства в виде файлов, а каталог /dev содержит ряд специальных файлов, представляющих устройства. Это не настоящие файлы в том виде, в каком мы их знаем, но они отображаются как файлы - например, /dev/sda представляет собой первый диск SATA в системе. Второй диск будет называться /dev/sdb. Если вы хотите его разбить, вы можете запустить редактор разделов и указать ему отредактировать /dev/sda. В итоге получим что первым разделом этого диска будет /dev/sda1, а вторым - /dev/sda2. Этот каталог также содержит псевдоустройства, которые представляют собой виртуальные устройства, которые на самом деле не соответствуют оборудованию. Например, /dev/random производит случайные числа. /dev/null - это специальное устройство, которое не производит вывода и автоматически отбрасывает весь ввод - когда вы перенаправляете вывод команды на /dev/null, вы отбрасываете его. /etc - Файлы конфигурации Каталог /etc содержит файлы конфигурации, которые обычно можно редактировать вручную в текстовом редакторе. Обратите внимание, что каталог /etc/ содержит общесистемные файлы конфигурации (например имя хоста) - пользовательские файлы конфигурации находятся в домашнем каталоге каждого пользователя. /home - Домашние папки Каталог /home содержит домашнюю папку для каждого пользователя. Например, если ваше имя пользователя - bob, у вас есть домашняя папка, расположенная в /home/bob. Эта домашняя папка содержит файлы данных пользователя и пользовательские файлы конфигурации. Каждый пользователь имеет право записи только в свою домашнюю папку и должен получить повышенные права (стать пользователем root) для изменения других файлов в системе. /lib - Основные общие библиотеки Каталог /lib содержит библиотеки, необходимые для основных двоичных файлов в папке /bin и /sbin. Библиотеки, необходимые для двоичных файлов в папке /usr/bin, находятся в /usr/lib. Имена файлов библиотеки: ld* или lib*.so.*. Поскольку вы, вероятно, используете 64-битную операционную систему, то у вас есть пара каталогов: /lib, /lib32 и /lib64. Те библиотеки, которые не содержат кода, специфичного для версии процессора, находятся в папке /lib. Те, которые зависят от версии, находятся в каталогах /lib32 (32-бит) или /lib64 (64-бит), в зависимости от ситуации. /lost+found - Восстановленные файлы В каждой файловой системе Linux есть каталог /lost+found. В случае сбоя файловой системы проверка файловой системы будет выполнена при следующей загрузке. Любые найденные поврежденные файлы будут помещены в каталог lost+found, чтобы вы могли попытаться восстановить как можно больше данных. /media - Съемный носитель Каталог /media содержит подкаталоги, в которых монтируются съемные носители, вставленные в компьютер. Например, когда вы вставляете компакт-диск в свою систему Linux, внутри каталога /media автоматически создается каталог. Вы можете получить доступ к содержимому компакт-диска внутри этого каталога. Например, /media/cdrom для CD-ROM (если он не расположен в корне), /media/floppy для дисководов гибких дисков, /media/cdrecorder для рекордера компакт-дисков /mnt - Временные точки монтирования Исторически сложилось так, что каталог /mnt - это то место, где системные администраторы монтируют временные файловые системы во время их использования. Например, если вы монтируете раздел Windows для выполнения некоторых операций по восстановлению файлов, вы можете подключить его в /mnt/windows. Однако вы можете монтировать другие файловые системы в любом месте системы. /opt - Дополнительные пакеты Каталог /opt содержит подкаталоги для дополнительных пакетов программного обеспечения. Он обычно используется проприетарным программным обеспечением, которое не подчиняется стандартной иерархии файловой системы - например, проприетарная программа может выгружать свои файлы в /opt/application при ее установке. /proc - Файлы ядра и процессов Каталог /proc похож на каталог /dev, потому что он не содержит стандартных файлов. Он содержит специальные файлы, которые представляют информацию о системе и процессе. Это псевдофайловая система, содержащая информацию о запущенном процессе. Например: каталог /proc/{pid} содержит информацию о процессе с этим конкретным pid. Также тут можно получить текстовую информацию о системных ресурсах. Например узнать аптайм /proc/uptime, проверить информацию о процессоре /proc/cpuinfo или проверить использование памяти вашей системой Linux /proc/meminfo. /root - Корневой домашний каталог Каталог /root - это домашний каталог пользователя root. Вместо того, чтобы находиться в /home/root, он находится в /root. Он отличается от /, который является корневым каталогом системы, важно не путать их. /run - Файлы состояния приложения Каталог /run является довольно новым и предоставляет приложениям стандартное место для хранения необходимых им временных файлов, таких как сокеты и идентификаторы процессов. Эти файлы нельзя хранить в /tmp, потому что файлы в /tmp могут быть удалены. /sbin - Двоичные файлы системного администрирования Каталог /sbin аналогичен каталогу /bin. Он содержит важные двоичные файлы, которые обычно предназначены для запуска пользователем root для системного администрирования. /selinux - виртуальная файловая система SELinux Если ваш дистрибутив Linux использует SELinux для обеспечения безопасности (например, Fedora и Red Hat), каталог /selinux содержит специальные файлы, используемые SELinux. Это похоже на /proc. Ubuntu не использует SELinux, поэтому наличие этой папки в Ubuntu кажется ошибкой. /srv - Сервисные данные Каталог /srv содержит «данные об услугах, предоставляемых системой». Если вы использовали HTTP-сервер Apache для обслуживания веб-сайта, вы, вероятно, сохранили бы файлы своего веб-сайта в каталоге внутри каталога /srv. /tmp - Временные файлы Приложения хранят временные файлы в каталоге /tmp. Эти файлы обычно удаляются при перезапуске вашей системы и могут быть удалены в любое время с помощью таких утилит, как tmpwatch. /usr - Пользовательские двоичные файлы и данные только для чтения Каталог /usr содержит приложения и файлы, используемые пользователями, в отличие от приложений и файлов, используемых системой. Например, второстепенные приложения расположены в каталоге /usr/bin вместо каталога /bin, а второстепенные двоичные файлы системного администрирования расположены в каталоге /usr/sbin вместо каталога /sbin. Библиотеки для каждого из них находятся в каталоге /usr/lib. Каталог /usr также содержит другие каталоги - например, файлы, не зависящие от архитектуры, такие как графика, находятся в /usr/share. Каталог /usr/local - это место, куда по умолчанию устанавливаются локально скомпилированные приложения - это не позволяет им испортить остальную часть системы. /var - файлы переменных данных /var это место, где программы хранят информацию о времени выполнения, такую как системный журнал, отслеживание пользователей, кэши и другие файлы, которые системные программы создают и управляют. Каталог /var является записываемым аналогом каталога /usr, который при нормальной работе должен быть доступен только для чтения. Файлы логов и все остальное, что обычно записывается в /usrво время нормальной работы, записывается в каталог /var. Например, вы найдете файлы логов в /var/log. Помимо логов тут можно найти пакеты и файлы базы данных /var/lib, электронные письма /var/mail, очереди печати /var/spool, файлы блокировки /var/lock, временные файлы, необходимые при перезагрузке /var/tmp.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59