CodeIgniter REST_Controller POST方法返回GET

时间:2018-05-25 00:54:14

标签: rest api codeigniter post get

我在我的项目中使用REST_Controller CodeIgniter库。

我有一个无法访问的登录post方法,因为REST_Controller将方法设置为 GET ,即使我执行 POST

以下是我的 Auth.php 控制器的片段:

defined('BASEPATH') OR exit('No direct script access allowed');

require_once APPPATH . '/core/REST_Controller.php';

class Auth extends REST_Controller
{
    function __construct()
    {
        parent::__construct();
    }

    public function login_get()
    {
        echo('get');
    }

    public function login_post()
    {
        echo('post');
    }
}

当我使用http://localhost/auth/login Google Chrome扩展程序在RESTED进行 POST 时,我获得echo('get')

Debbuging REST_Controller 我可以看到函数_detect_method()正在返回方法 GET ,这是因为在函数method()中< em>输入 CodeIgniter $this->server('REQUEST_METHOD')的核心类正在返回 GET

为什么会这样?

1 个答案:

答案 0 :(得分:1)

没关系,我得到了解决方案!

发生这种情况只是因为我忘了在我的Apache中启用 mod_rewrite

这解决了问题:

sudo a2enmod rewrite
sudo service apache2 restart