栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Codeigniter CSRF仅在一次Ajax请求中有效

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Codeigniter CSRF仅在一次Ajax请求中有效

我认为您应该尝试重新创建每个请求的csrf令牌

试试这个代码示例…

对于js函数

var csrfName = '<?php echo $this->security->get_csrf_token_name(); ?>',    csrfHash = '<?php echo $this->security->get_csrf_hash(); ?>';("#avatar").change(function(){    var link = $("#avatar").val();    var dataJson = { [csrfName]: csrfHash, id: "hello", link: link };    $.ajax({        url : "<?php echo base_url('main/test'); ?>",        type: 'post',        data: dataJson,         success : function(data)        {    csrfName = data.csrfName; csrfHash = data.csrfHash; alert(data.message);        }      });});

对于控制器

public function test() {     $config['upload_path'] = './uploads/';     $config['allowed_types'] = 'gif|jpg|png';     $config['max_size'] = 500;     $config['max_width'] = 260;     $config['max_height'] = 260;    $reponse = array(     'csrfName' => $this->security->get_csrf_token_name(),     'csrfHash' => $this->security->get_csrf_hash()     )    $this->load->library('upload', $config);     if (!$this->upload->do_upload('link')) {         $reponse['message'] = "error";     }     else {         $data = array('upload_data' => $this->upload->data());         $image_name = $data['upload_data']['file_name'];         $reponse['message'] = $image_name;     }    echo json_enpre($reponse);}

让我知道,祝你好运

注意: 当有人要求您向问题发布更多数据时,请勿将其发布为评论或答案,最好自己编辑问题并添加内容



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/436891.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号