php - 启用基本身份验证 Codeigniter rest API

标签 php codeigniter rest

你好,我在理解如何使用 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/

相关文章:

php - 将输入表单的值添加到当前字段值并在 PHP 中更新字段

php - 关于PHP开发

java - Spring MVC REST 不符合 JAX-RS。有关系吗?

php - 如何在codeigniter中将mysql数据库的多个表作为单个表进行查询(获取)

php - CodeIgniter - 从空值创建默认对象

java - 删除大于 1000 的 ID 时出现问题

javascript - 正确返回获取的 JSON,但无法将其放入 Chart.JS

php - 如何在 Laravel 5.1 中显示保存成功消息?

php - PHP 中的 MySQL 访问类

php - 在页面上显示 html 内容时出错