【发布时间】:2021-06-09 19:02:58
【问题描述】:
我在 codeigniter 中有一个简单的应用程序。在我看来,我对控制器有 ajax POST 请求,但我没有收到响应数据。我在网络选项卡中的 chrome 开发工具中检查了响应,消息是:此请求没有可用的响应数据: 我的看法:
<table class="table table-striped table-bordered">
<thead>
<tr>
<td>First</td>
<td>Sec</td>
<td>Th</td>
<td>Th</td>
</tr>
</thead>
<tbody>
<?php
if(isset($result))
{
foreach($result as $value)
{
echo "<tr><td>". $value->cai . "</td><td>". $value->partner ."</td><td>". $value->spot ."</td><td><button type='button' id='".$value->cai."' class='btn btn-danger delete'>Delete</button></td></tr>";
}
}
?>
</tbody>
</table>
<?php echo $this->pagination_bootstrap->render(); ?>
<script>
$('.table').on('click','.delete',function(){
var id=$(this).attr('id');
var confirm_box=confirm('Sure?');
if(confirm_box === true)
{
$.ajax({
url: '<?php echo site_url('Tires_Crud/deleteCai'); ?>',
type: 'POST',
data: {
key: id
},
dataType: 'json',
success: function(data) {
console.log(JSON.parse(data));
}
});
}
});
</script>
我的控制器:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Tires_Crud extends MY_Controller
{
public function deleteCai()
{
$status = array(
"STATUS" => "true"
);
return json_encode($status);
}
}
在我的配置文件中,CSRF 保护被禁用!因为当它启用时,ajax 请求不起作用。提前感谢您的帮助!
【问题讨论】:
-
所以您的问题实际上是关于如何在 CSRF 设置为 true 的情况下获取响应数据,例如
$config['csrf_protection'] = true;? 请确认 -
没有。启用 CSRF 保护后,ajax 请求不起作用。我收到一条消息:不允许
-
我很困惑...
标签: ajax codeigniter request