Yii为什么要给我400个不良请求?

时间:2015-10-01 13:12:55

标签: php yii controller

由于某些原因,我在调用控制器时收到400 Bad Request

此功能正常工作并返回数据:

lib.getAjax('/address/getDuplicates','').done(function(response){});

然而,此功能会触发400 Bad Request

lib.setAjax(url,data).done(function(response){});

我的路线如下:

'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',

我在AddressController中的功能如下所示:

public function actionGetDuplicates(){
    $result = Address::getDuplicates();
    ApplicationPlugin::sendAjaxResponse($result);
}

public function actionMergeDuplicates(){
    $requestData = ApplicationPlugin::getRequestData(array('primaryStreetID, selectedRows'));
    $result= Address::mergeDuplicates($requestData->primaryStreetID, $requestData->selectedRows);

    ApplicationPlugin::sendAjaxResponse($result);
}

1 个答案:

答案 0 :(得分:1)

所以我发现了我的错误。

在我的控制器中,我这样做:

$requestData = ApplicationPlugin::getRequestData(array('primaryStreetID, selectedRows'));

当我必须这样做时:

$requestData = ApplicationPlugin::getRequestData(array('primaryStreetID', 'selectedRows'));

这是导致400 bad request

的原因