Php Yii框架1.1.14-不允许AJAX请求-禁止403
我已经看到了许多与此相关的其他问题,我尝试了他们的解决方案,但仍然不起作用(相同的错误),这就是我打开此线程的原因 要素: 1视图-->发起AJAX请求。 1控制器-->应处理AJAX请求并返回数组 视图: 当然,我有一个动作叫做actionAjax 我是不是遗漏了什么?有什么规则我应该考虑吗 我是否可以在Yii中自由地进行任何Ajax调用(load、post…),或者我应该遵循一个约定/函数Php Yii框架1.1.14-不允许AJAX请求-禁止403,php,ajax,jquery,yii,Php,Ajax,Jquery,Yii,我已经看到了许多与此相关的其他问题,我尝试了他们的解决方案,但仍然不起作用(相同的错误),这就是我打开此线程的原因 要素: 1视图-->发起AJAX请求。 1控制器-->应处理AJAX请求并返回数组 视图: 当然,我有一个动作叫做actionAjax 我是不是遗漏了什么?有什么规则我应该考虑吗 我是否可以在Yii中自由地进行任何Ajax调用(load、post…),或者我应该遵循一个约定/函数 感谢您对此进行研究。您的数组语法中缺少字符 public function accessRules()
感谢您对此进行研究。您的数组语法中缺少字符
public function accessRules() {
return array(
array('allow',
'actions'=>array('ajax'),
'users'=>array('@'),
),
);
}
它似乎与此相关: $.ajax({
url:“”,
数据:{},
类型:“POST”,
数据类型:“html”,
成功:功能(响应){
$('#test').html(响应);
},
错误:函数(){
警报(“来自AJAX请求的请求数据失败”);
}
});
谢谢你的帮助 禁止意味着您必须在控制器的accessRules中添加该规则:
class TestController extends Controller
{
public function accessRules()
{
return array(
array('allow',
'actions' => array('ajax'),
'users' => array('@'),
),
array('deny',
'users' => array('*'),
),
);
}
}
请看一看您的代码,因为它充满了拼写错误:
$(document).ready(function(){
$("button").click(function(){
$("#test").load("<? echo Yii::app()->createUrl('test/ajax'); ?>");
});
});
$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
$(“#测试”)。加载(“”);
});
});
可能是输入错误,但数组语法中缺少>字符。应该是'users'=>array('@'),感谢您检查这一个。事实上,在向问题添加代码后,“>”字符消失了,但我的答案是正确的。I get:加载资源失败:服务器响应状态为403(禁止),感谢您检查此状态。事实上,在向问题添加代码后,“>”字符消失了,但我的答案是正确的。还有其他建议吗?提前谢谢你!
url:"<?php echo Yii::app()->createUrl('test/ajax');?>",
data:{},
type:"POST",
dataType:"html",
success:function(response){
$('#test').html(response);
},
error:function(){
alert("Failed request data from AJAX request");
}
});
class TestController extends Controller
{
public function accessRules()
{
return array(
array('allow',
'actions' => array('ajax'),
'users' => array('@'),
),
array('deny',
'users' => array('*'),
),
);
}
}
$(document).ready(function(){
$("button").click(function(){
$("#test").load("<? echo Yii::app()->createUrl('test/ajax'); ?>");
});
});