Я пишущий REST форма API мое веб-приложение. Приложение записано с помощью платформы CodeIgniter. Само приложение хорошо работает, но я застреваю при создании Аутентификации REST. Я думаю, что основная Аутентификация HTTP будет достаточно хороша в течение некоторого времени. Общедоступный API еще не планируется.
Есть ли любой пример кода, как достигнуть Аутентификации REST поэтому после того, как пользователь аутентифицируется, он может свободно назвать все защищенные методы.
Я написал контроллер 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.