Codeigniter中是否有一个内置功能可以了解控制器中的HTTP方法,也就是请求方法(get/post/put…)?我想是这样的:
if ( ! $this->input->is_post() ) show_error('Access forbidden', 403 );
我想禁止在需要后期输入的函数中访问GET方法。我在医生那里找不到关于这件简单事情的资料。
试试这个:
if($_SERVER['REQUEST_METHOD'] == 'GET'){
exit();
}
//continue with your code. it's a POST.
您可以这样尝试:
if($this->input->server('REQUEST_METHOD') == 'POST'){
show_error('Access forbidden', 403 );
}
在正常情况下,您可以使用以下
if($_SERVER['REQUEST_METHOD'] == 'GET')
//abort
或者您可以为此创建CI帮助程序。
如果要阻止post,请在if条件中使用字符串"post"。就这么直向前地
在可疑情况下,如果你想阻止张贴(如果你觉得请求方法可以被操纵)
注意:我没有使用以下内容,这只是我的即时想法。检查http原始输入数据。
$rawdata = file_get_contents('php://input');
也许你可以检查strlen是否大于零。。。或者在这里添加您的逻辑。
假设您不希望仅使用codeigniter来解决此问题。