如何处理codeigniter

时间:2017-06-05 04:47:32

标签: api codeigniter post csrf csrf-protection

我有一个项目,我们应该使用CI在2个不同的应用程序中进行交互。我使用post方法从第1个应用程序发送请求到第2个应用程序。在配置csrf并使用表单测试后,我得到了输出

An Error Was Encountered.The action you have requested is not allowed.

我想知道如何处理这个问题? 我正在使用CI v2

1 个答案:

答案 0 :(得分:1)

我相信你已经为CSRF做了适当的设置。如果没有,请参阅Codeigniter CSRF文档。以下是链接。 https://www.codeigniter.com/user_guide/libraries/security.html#cross-site-request-forgery-csrf

现在,对于API,您需要将来自CSRF的URI列入白名单。

这样使用,

$config['csrf_exclude_uris'] = array('api/person/add', 'api/person/edit/[0-9]+');

也支持正则表达式(不区分大小写):

    $config['csrf_exclude_uris'] = array(
        'api/record/[0-9]+',
        'api/title/[a-z]+'
    );