2011-07-02 28 views
3

我有我的控制器的方法,如forgot_passwordlogin仅由AJAX调用的控制器方法使私有?

这些仅仅是通过AJAX调用,但默认情况下,你可以通过URL浏览到他们由于CI的工作方式。

我可以以某种方式将它们设置为私人,并仍然通过AJAX访问它们吗?这里做的事情是什么?

+0

接受的答案,如果你觉得任何人是对的!当其他人转达您的答案选择。 –

回答

0

如果你想测试ajax请求,这样的事情可能会有所帮助。

编辑:在CI中有一个帮助函数来检测ajax请求。 答案是过时

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH']=="XMLHttpRequest") 
{ 
// most probably ajax request 
} 
else 
{ 
    echo "not sure";  
} 
14

这里最好的做法是使用$this->input->is_ajax_request()

if(! $this->input->is_ajax_request()) { 
    redirect('404'); 
} 
相关问题