PHP REST Doğrulama (CodeIgniter)

2 Cevap php

REST API benim web uygulaması oluşturmak yazma. Uygulama CodeIgniter framework kullanılarak yazılır. Uygulama kendisini gayet iyi çalışıyor, ama REST kimlik doğrulaması yapmaya saplanıp kaldım. Ben temel Http Doğrulama bir süre için yeterince iyi olacağını düşünüyorum. Kamu API henüz planlanmış değildir.

Kullanıcı o serbestçe tüm korumalı yöntemleri çağırabilir doğrulanır kadar sonra DİNLENME kimlik doğrulaması ulaşmak için nasıl bir kod örneği var mı.

2 Cevap

HTTPS kullanıyorsanız, temel kimlik doğrulaması kullanmak ve bunu yapmak çok kolay. Sadece kontrolörüne aşağıdaki kodu ekleyin,

   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

Ben diğer SAPI modülleri kullanarak eğer auth değişken isimleri belki farklı, mod_php'yi kullanın.

Ben oluşturmak için REST uygulamaları kolaylaştırmak için REST Kontrolörü kadar yazdım. Siz bu konuda okuma NetTuts: Working with RESTful services in CodeIgniter. Olabilir