将$.ajax()
与Yii2一起使用时,我遇到了一些问题。该网址会在参数/数据之前自动添加?
符号。
代码如下:
$.ajax({
url: '<?php echo Yii::app()->baseUrl; ?>/room/BillPayment',
data: DATA,
traditional: true,
success: function (data) {
现在我的网址变为:http://localhost/testdata/room/billpayment?
后跟params。但最终结果是它会将错误视为错误请求。
那么如何删除?
符号?
答案 0 :(得分:1)
这是在查询字符串中传递参数的正确语法,有关详细信息,请参阅http://en.wikipedia.org/wiki/Query_string。
所以,如果您不想要?
,请不要传递参数,而是建立自己的完整网址。
答案 1 :(得分:0)
如果请求类型为GET
,则完全正常。
Bad Request
的常见原因:
1)缺少必需的控制器操作参数。
2)错误的请求类型(例如GET
而不是POST
),通常会附加VerbFilter
。
3)错过了CSRF令牌。通常在使用AngularJs时会发生这种情况。
您可以将请求类型更改为POST
,但如果您要修改某些内容,建议您使用GET
获取数据完全正常。