CakePHP 3.0: Antwort als json

Ich bin erstellen einer CakePHP 3.0-REST-API. Ich folgte diese Anweisungen (Arbeitsplan im Buch) und erhielt Antwort im json-Format. Hier ist mein code.

01 src/config/rout.php

Router::extensions('json');

02 src/controler/UsersController.php

  public function view($id = null) {
    $data = array('status' => 'o','status_message' => 'ok' );
    $this->set('data', $data);
    $this->set('_serialize', 'data');  
}

03 senden einer post-Anfrage an diese URL

http://domain.com/users/view.json

Ausgabe:

{
    "status": "o",
    "status_message": "ok"
}

Aber ich möchte json-out put ohne .json Erweiterung. vielen Dank im Voraus.

  • Versuchen Router::parseExtensions('json'); statt Router::extensions('json'); ?
  • Aber, 3-0-migration-guide sagt Router::parseExtensions() wurde entfernt. Verwenden Sie Kuchen\Routing\Router::extensions() statt. Diese Methode muss aufgerufen werden, bevor Routen verbunden sind. Es wird sich nicht ändern bestehender Routen.
  • Jeder Weg, ich möchte nicht hinzufügen-Erweiterung für meine URL. Ich möchte heraus stellen JSON-Antwort ohne .json-Erweiterung.
  • Sie müssen die header übergeben wie Accept: application/json und erhalten Sie die Ausgabe als json-format.
Schreibe einen Kommentar