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

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

Генетический алгоритм - что ты такое?

Декабрь 9, 2016 г.

Генетический алгоритм - это довольно новый инструмент в арсенале решения задач. Использовать метод стало возможным благодаря вычислительной технике. ЭВМ ...

Читать

Способы прижать HTML элемент к нижнему краю экрана

Сентябрь 14, 2015 г.

Много занимаюсь версткой, потому возникают разные интересные задачи. Решил не оставлять без внимания этот интересный опыт. Одна из таких задач, которая ...

Читать

Рендеринг нужного блока в Drupal 7

Июль 12, 2015 г.

Не всегда удобно выводить блоки в определенные шаблоном регионы. Как вывести произвольный блок в нужном месте шаблона? Для решения этой задачи пришлось не много покопаться в коде движка. Результатом копания стала вот такая функция: [crayon-6ad9503067af6656240851/] ...

Читать

Как оптимизировать диск, используемый WSL

Октябрь 12, 2024 г.

При удалении файлов на диске, используемом WSL, размер файла ext4.vhdx не уменьшается. Обычно он имеет тенденцию только расти в процессе работы. Как ...

Читать
 

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

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



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