Intereting Posts
Предупреждение о безопасности PhpMyAdmin для файлов конфигурации Предоставляет ли PHP функцию fopen реализовать какой-то кеш? Проблема php с функцией и eval в массиве Сравните две даты в smarty производительность mcrypt Добавление резервного изображения в цикл специальных настраиваемых полей wordpress Разрешенный размер памяти 67108864 байт исчерпан (пытался выделить 4459414 байт) при написании файла xml Как определить, является ли список подмножеством другого списка? Загрузка изображения на ошибку codeigniter с использованием crud PHP – переопределить существующую функцию ClassNotFoundException: Попытка загрузить класс … Symfony Получить параметры объекта Поле в веточке Ошибка дескриптора файловой системы PHP Простое имя учетной записи SPA, сохраненное как «root» вместо заданного имени пользователя laravel 5 schedule работает с -> cron ('* * / 1 * * *'), но не работает с -> hourly ()

Аутентификация REST в PHP (CodeIgniter)

Я пишу REST API из своего веб-приложения. Приложение написано с использованием рамки CodeIgniter. Само приложение работает нормально, но я застрял в создании аутентификации REST. Я думаю, что базовая аутентификация Http будет достаточно хорошей в течение некоторого времени. Открытый API еще не запланирован.

Есть ли какой-либо пример кода, как достичь аутентификации REST, поэтому после аутентификации пользователя он может свободно вызывать все защищенные методы.

Solutions Collecting From Web of "Аутентификация REST в PHP (CodeIgniter)"

Я написал контроллер REST, чтобы упростить создание приложений REST. Вы можете прочитать все об этом в NetTuts: Работа с службами RESTful в CodeIgniter .

Если вы используете HTTPS, вы можете использовать обычную проверку подлинности, и это очень легко сделать. Просто добавьте следующий код к контроллеру,

if (empty($this->input->server('PHP_AUTH_USER'))) { header('HTTP/1.0 401 Unauthorized'); header('HTTP/1.1 401 Unauthorized'); header('WWW-Authenticate: Basic realm="My Realm"'); echo 'You must login to use this service'; // User sees this if hit cancel die(); } $username = $this->input->server('PHP_AUTH_USER'); $password = $this->input->server('PHP_AUTH_PW'); // Check username and password 

Я использую mod_php, ваши имена переменных auth могут отличаться при использовании других модулей SAPI.