j'ai une application de lithium mis en place de cette façon, de sorte que lorsquelithium PHP (LI3) la configuration de réponse automatique avec JSON
return($data)
est utilisé, il peut soit être utilisée dans le view.html.php de lithium comme
echo $data
ou si en-tête de demande "accepter" est égal à "JSON/javacript" il retourne quelque chose comme
{
data: { a:'b' }
}
automatiquement.
Malheureusement dans la nouvelle application que j'ai faite en tant qu'application de test, ce flux ne se produit pas (et seul le HTML est toujours retourné).
Après avoir fait un peu de recherche, il semble que ce qu'il est censé être fait automatiquement si je décommenter
require __DIR__ . '/bootstrap/media.php';
intérieur bootstrap.php Mais cela ne fonctionne pas, j'ai encore HTML retourné. J'ai téléchargé une version récente du framework lithium (que j'ai téléchargé il y a 1 ou 2 mois)
Quelqu'un sait si la réponse automatique avec JSON nécessite une configuration ou non?
La réponse est correcte merci! Petite addition: pour le faire fonctionner, il faut mettre $ this -> _ render ['negotiate'] = true; code à l'intérieur de la fonction _init d'un contrôleur, si mis à l'intérieur d'une action du contrôleur, il ne fonctionne pas. La version complète du code ressemble à \t protected function _init() { \t \t // l'option negotiate indique à li3 de servir le bon type de contenu \t $ this -> _ render ['negotiate'] = true; \t \t parent :: _init(); \t} – Evgenius
son étrange. Je retourne JSON et je l'ai fait configurer net de cette façon. mais je ne sais rien de spécifique pour le mettre en place, je l'ai juste essayé une fois et cela a fonctionné. J'ai activé media.php – Tomen
@Tomen Je pense que c'est la façon dont la demande de JSON arrive. Explicite dans le contrôleur ou à partir du type de contenu ou dans l'URL. –