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, и код сократится до совсем простого:

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

Ошибка в Drupal Adding non-existent permissions to a role is not allowed. The incorrect permissions are "..."

Июль 25, 2023 г.

Такое иногда вылазит как следствие удаления кастомных классов/модулей, создающих собственные права или инициализирующие права через родительский модуль. Как это пофиксить? Права из роли не были удалены штатно, потому придется сделать следующее: ...

Читать

Лечим 403-ю Forbidden - доступ запрещен

Январь 23, 2017 г.

В данном случае от "404 ошибки - файл не найден" нас отделяет целая пропасть. Файл найден, но сервер его не спешит отдавать пользователю, т.к. считает, что у пользователя не достаточно на это прав. Если сервер предотвратил несанкционированный доступ ...

Читать

Лишние сетевые интерфейсы в WSL Ubuntu

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

Продолжаю использовать Ubuntu (v22) на WSL 2. Не давно столкнулся с не приятным моментом. Из WSL вдруг перестала быть видимой внешняя сеть, хотя до этого ...

Читать

Выполнение php кода через drush

Март 24, 2020 г.

Для отладки или выполнения какого то разового кода иногда требуется выполнить php код в системном окружении вашего сайта на Drupal. Без drush приходится добавлять код вроде следующего в файл темы (а в последствии его удалять от туда): [crayon-6a28f2e6d6aef227361615/] ...

Читать
 

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

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



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