0

我在用户会话中有一个数据网格表(管理员的用户可视化)。

要初始化数据网格,我需要使用包含表中项目的数组来设置 url 数据。

为此,我必须允许显示这些数据的操作(Codeigniter mvc)。

如何保护我的操作以仅允许我的应用程序的用户通过 jQuery.ajax() 方法访问?

例如,我已经登录到我的会话并使用 datagrid 访问视图,该视图使用此函数获取数据并将其设置在表上:

  $('#content').WATable(
  {
    url: '/api/showusers'
  }).data('WATable');

谢谢!

4

1 回答 1

1

app/config/constants.php

define('IS_AJAX', isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest');

然后在showusers()

public function showusers() {
    if(!IS_AJAX) { 
        show_404()
    }

    // continue with processing
}

我到处都用这个!如果您在仅限用户的区域,codeigniter 将处理用户身份验证并确保该操作仅由 ajax 访问。

于 2013-07-23T18:02:26.560 回答