我从我的Web应用程序编写REST API.应用程序使用CodeIgniter框架编写.应用程序本身工作正常,但我仍然坚持进行REST身份验证.我认为基本的Http身份验证在一段时间内已经足够好了.公共API尚未规划.
是否有任何代码示例如何实现REST身份验证,因此在用户通过身份验证后,他可以自由调用所有受保护的方法.
我编写了一个REST控制器,使您的REST应用程序更易于构建.您可以在NetTuts上阅读所有相关内容:在CodeIgniter中使用RESTful服务.
如果您使用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,如果使用其他SAPI模块,您的auth变量名可能会有所不同.