Tengo un método de controlador que durante mucho tiempo ha estado manejando las solicitudes JSON al analizar esa extensión, pero ahora tengo que abrirlo para cruzar el dominio ajax, así que me gustaría ofrecer una variante JSONP al analizar ese extensión también. Ya he actualizado mi routes.php
archivo:CakePHP, extensiones y diseños
Router::parseExtensions('json', 'jsonp');
Hasta ahora todo está bien, pero la felicidad termina cuando los resultados son prestados. Mientras que la extensión .json
elige automágicamente el diseño json/default.ctp
, el contenido .jsonp
continúa adoptando el diseño predeterminado no específico (y todo su contenido HTML innecesario). Intenté usar RequestHandler::setContent()
para establecer el tipo de contenido de respuesta en json
y js
, pero eso no parece ser lo que desencadena la llamada a un directorio de diseño determinado.
¿Alguien sabe qué determina qué directorio de diseño específico del contenido se llama? Intenté crear jsonp/default.ctp
y traté de crear un diseño js/default.ctp
con mi resultado JSONP, pero parece que nada parece funcionar. Acabo de obtener el valor predeterminado normal.
Cualquier información sobre cómo se asignan las extensiones/el tipo de contenido a estos directorios de diseño sería muy apreciada.