是的,您可以毫无问题地做到这一点。CodeIgniter输入类具有一个称为is_ajax_request()的方法。只需在控制器操作开始时检查一下即可。例如:
function ajax_save() { if ($this->input->is_ajax_request()) { //continue on as per usual } else { show_error("No direct access allowed"); //or redirect to wherever you would like }}如果您有为ajax调用完全指定的控制器,则可以将该if语句放入
function __construct()控制器的构造函数中。记住要先调用parent
:: __ constructor()!
编辑:至于“从页面开始”,您可能应该对ajax请求进行身份验证+安全检查(可能通过会话进行操作,这样您就不会访问数据库了)。因此,与您的Web应用程序无关的流氓用户无论如何都不应该手动发送ajax请求。希望这能回答您的问题。



