你好,我在理解如何使用 CodeIgniter 和使用 https://github.com/chriskacerguis/codeigniter-restserver 启用基本身份验证时遇到了问题。 .其余.php:
|--------------------------------------------------------------------------
| REST Login
|--------------------------------------------------------------------------
|
| Set to specify the REST API requires to be logged in
|
| FALSE No login required
| 'basic' Unsecure login
| 'digest' More secure login
| 'session' Check for a PHP session variable. See 'auth_source' to set the
| authorization key
|
*/
$config['rest_auth'] = 'basic';
我启用了基本身份验证,下面我有这个:
/*
|--------------------------------------------------------------------------
| REST Login Usernames
|--------------------------------------------------------------------------
|
| Array of usernames and passwords for login, if ldap is configured this is ignored
|
*/
$config['rest_valid_logins'] = ['admin' => '1234'];
如果我使用 admin 作为用户名并使用 1234 作为密码,登录就可以了。我的问题是如何将用户注册到我的数据库并更新有效的登录配置?当用户注册时,我不必去 rest.php 并将记录添加到 $config['rest_valid_logins'] 但它会自动完成吗?
任何帮助将不胜感激!!!
最佳答案
您可以为您的 REST 服务器创建 API key ,而不是使用基本登录。
在您的平台中创建的每个用户都需要在 key 表中有一条记录。这些 key 需要在每个请求的 header 中发送。
请检查 rest.php 文件。键的表有 CREATE TABLE 语句。
您需要更改这三个设置:
$config['rest_keys_table']
加上表名。
$config['rest_enable_keys']
为真值。
$config['rest_key_column']
以及负责存储关键数据的列。
因此,每个请求都将由 CodeIgniter 处理,CodeIgniter 将检查 header 中发送的 API key 是否有效。
关于php - 启用基本身份验证 Codeigniter rest API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37589737/