【发布时间】:2017-11-15 13:40:20
【问题描述】:
我想用 Yii2 做一个 web 项目,我想返回一个 JSON 到 AJAX。我用过json_encode()和Yii::$app->response->format = Response::FORMAT_JSON;,还是不行。
这是我的行动:
public function actionAbout(){
Yii::$app->response->format = Response::FORMAT_JSON;
return json_encode(["test"=> 1]);
}
这是我的 AJAX:
$.ajax({
type: "POST",
// dataType: 'json',
data: {
'user': 'A'
},
url: "?site/about",
contentType: "application/json",
success: function(data) {
console.log(typeof(data));
console.log(data)
},
error: function (data) {
console.log(data);
},
});
但它会返回这个:
<!DOCTYPE html>....
仍然是一个 html。如何解决?
【问题讨论】:
-
对我来说很好。尽管将响应类型设置为
FORMAT_JSON时,您不应该自己json_encode数组。完整的回应是什么?