Я пытаюсь протестировать запрос ajax с базовой установкой Yii2.Я просто использую метод SiteController :: actionAbout (), чтобы попробовать это.
public function actionAbout()
{
Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
return [
'message' => 'hello world',
'code' => 100,
];
}
И в тесте:
public function sendAjax(\FunctionalTester $I)
{
$I->sendAjaxGetRequest('site/about');
$r = $I->grabResponse();
die(var_dump($r));
}
Метод ответа на запрос - это тот, который я сам написал вФайл \ Helper \ Functional.php:
public function grabResponse()
{
return $this->getModule('Yii2')->_getResponseContent();
}
Когда я выкидываю ответ, я просто вижу HTML-код со страницы сайта / индекса.Это происходит для любого маршрута, кроме сайта по умолчанию.Если я пытаюсь сделать то же самое, используя сайт / индекс, он возвращает:
string(36) "{"message":"hello world","code":100}"
Что я пропускаю / делаю неправильно?