Base Auth в PHP

Рассмотрим здесь вариации с выполнением base auth. Как оказывается из опыта работы с некоторыми API, они не являются эквивалентными. И одна форма запроса может не работать, в то время как другая будет выполняться.

Задача следующая — получить содержимое по адресу $url, если страница защищена базовой авторизацией.

Классический вариант, когда base auth (или http auth) передают в заголовках запроса. В процессе требуется использовать base64 кодировку для парольной пары:

Base Auth через заголовки:

Или CURL вариант этого же кода:

CURL также позволяет использовать специальную опцию, которую он самостоятельно преобразует в нужные заголовки:

Другой метод заключается в использовании URL, как носителя пары user-pass.

Base auth через URL

URL нужно заменить на следующую, используя спецификацию URL с передачей реквизитов:

В этом случае не нужно формировать заголовок Authorization, и код сократится до совсем простого:

Мало букафф? Читайте есчо !

Работа с фрагментами в kotlin

Февраль 13, 2025 г.

Небольшой гайд по работе с фрагментами в android studio. Фрагменты чем то напоминают фреймы в html. Фрагменты обладают многими возможностями, которые есть у активити (Activity), имеют свой lifecycle, также работают с viewModel и т.п. И конечно же фрагмент ...

Читать

Установка языка по умолчанию в drupal 6 на мультиязычном сайте

Март 29, 2012 г.

Столкнулся с интересной проблемкой в Drupal 6 при создании мультиязычного сайта. Сама мультиязычность создавалась довольно типичным способом - пара стандартных модулей locate, content translate + i18n. Для каждого языка был выбран свой префикс пути ...

Читать

Drupal Twig Extends

Март 5, 2024 г.

Для понимания как работает пространство имен в twig экосистемы друпал. Темы предоставляют в пространство имен свой id, т.н. machine name. По этому имени можно сослаться на конкретную тему, указывая далее имя файла относительно подкаталога /templates. ...

Читать

Mysqldump без блокировки таблиц

Ноябрь 11, 2019 г.

По умолчанию для mysqldump требуются права пользователя на блокировку таблиц. Потому, когда вы создаёте бекапы, вы можете получить сообщение вроде: mysqldump: Got error: 1044: "Access denied for user 'USER'@'%' to database 'DATABASENAME'" when ...

Читать
 

Комментарии к «Base Auth в PHP»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: