首页 > 解决方案 > Yii2 在智能手机上发送 GET 请求,但在计算机上发送 POST 请求

问题描述

我正在尝试向 Yii2 中的注销操作发送 POST 请求。这是我的代码:

<?= Html::a(' Logout', Url::to(['/site/logout']),[
                                'class'=>['icon', 'icon fa-times'],
                                'title'=>'Logout',
                                'data-method'=>'post',
                            ]) ?>

我也已经试过了,但没有奏效:

<?= Html::a(' Logout', Url::to(['/site/logout']),[
                                'class'=>['icon', 'icon fa-times'],
                                'title'=>'Logout',
                                'data' => [
                                     'method' => 'post',
                                ],
                            ]) ?>

两者都只能在计算机或大屏幕设备上完美运行,但如果我打开页面并尝试在任何智能手机上注销,它就不起作用,它给了我一个:

不允许的方法 (#405)。此 URL 只能处理以下请求方法:POST。

我在我的电脑上尝试并且可以工作,但是如果我使用 Firefox 或 Chrome 上的开发人员选项并调整模拟手机的屏幕大小,它不起作用,我注意到它发送了一个 GET 请求,但是如果我恢复屏幕的原始大小,它再次工作并发送一个 POST 请求。我花了几个小时试图解决它,但我不知道问题是什么,方法(GET 或 POST)怎么可能取决于屏幕大小?

PS:我已经将 YiiAsset 添加到 AppAsset.php 中,但仍然报错。

谢谢

标签: phppostmethodsyii2screen

解决方案


推荐阅读