我如何在 Codeigniter 中禁用某些控制器的 csrf 令牌

How I can disable csrf token for some controller in Codeigniter

在我的网络应用程序中,csrf 令牌工作正常。但是我想为 API 调用禁用它,而 API 从我的 android 应用程序调用。我正在为我的 API 使用另一个身份验证。请告诉我如何为 API 控制器的所有功能禁用 csrf 令牌。我试图在我的控制器中添加访问权限作为 header 但它不起作用。请帮助我。

public function __construct() {
    
    header('Access-Control-Allow-Origin: *');
    header('Access-Control-Allow- Methods: POST, GET, PUT, DELETE, OPTIONS');
}

因为你想在控制器中禁用 CSRF 功能,你可以在构造方法中通过 $this->config->set_item('csrf_protection', false); 更改“csrf_protection”的配置值。

另一种最好的方法是在配置文件中添加路径以排除 CSRF 检查

$config['csrf_exclude_uris'] = array('api/person/add');

有关详细信息,请参阅 CI3 CSRF