微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – Yii Framework 2.0检查它是否是来自AJAX的GET请求

使用Yii framework 2.0,我有一个 AJAX GET jQuery脚本,它指向控制器类中的一个函数.

@H_404_9@$.get('localhost/website/index',{param: 'xxxx'},function(returnedData){ // some code here..... },'json');

在控制器类中,我有一个处理AJAX GET请求的方法.

@H_404_9@public function actionIndex() { $getParam = $_GET['param']; // echo $getParam is: 'xxxx'. // some other code here.... echo json_encode(array()); }

执行这个AJAX GET jQuery脚本时一切正常.但是,如果我在Web浏览器上手动访问链接localhost / website / index,我会收到以下错误.

@H_404_9@PHP Notice - ErrorException Undefined index: param // the code snippet is also being shown.....

我不希望任何用户看到此错误,以防他们知道此链接并偶然或故意访问此链接.如果我使用

@H_404_9@if($_GET['param']){...}

我仍然在浏览器上收到错误消息.我怎么解决这个问题?

解决方法

您可以检查请求是否为ajax请求:

@H_404_9@$request = Yii::$app->request; if ($request->isAjax) {...}

或者您可以检查请求是POST还是GET

@H_404_9@if (Yii::$app->request->isPost) {...} if (Yii::$app->request->isGet) {...}

并始终使用isset()!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐