Cakephp 2.3 を使用しており、ユーザーのリストを json 形式で生成したいと考えています。
コントローラー名: ユーザー メソッド: リスト
以前、私は Cake 1.3.x でそれを行いました。ユーザーがブラウザーで URL 経由でメソッドにアクセスしようとすると、出力はダウンロード ファイルとして表示されますが、cakephp 2.3 で実行すると、ダウンロードではなくブラウザー ページ自体に json 出力が表示されます。ファイル。
ここに私のコードがあります:
コントローラ:
<?php
App::uses('AppController', 'Controller');
class UsersController extends AppController {
public $helpers = array('Form', 'Html', 'Js', 'Time');
public $components = array('RequestHandler');
var $layout = 'js/default';
public function list() {
$this->log("i got data in user add:");
$this->log($this->request->data);
$posts['id']['name']='kapil';
$this->set(compact('posts'));
}
}
list.ctp ファイル
<?php echo json_encode(compact('posts')); ?>
ビュー/js/default.ctp
<?php echo $scripts_for_layout; ?>
<?php echo $this->fetch('content'); ?>
ブラウザで自分の関数にアクセスしようとすると、この出力が得られます
url: http://localhost/project/users/list
{"posts":{"id":{"name":"aditya"}}}
この出力は正しいですが、ダウンロード ファイル形式である必要があります。ここで何が問題なのかわかりません。