Joomla Framework를 사용하여 웹 애플리케이션을 구축하기 시작했습니다 . AJAX로 컨텐츠를 업데이트하는 데 사용되는 API와 함께 iFrame에 표시되는 간단한 웹 페이지로 구성됩니다.
Composer와 Joomla 시작하기를 따랐습니다 ! 기사를 작성하고 Framework 앱을 시작하고 실행하십시오. iFrame에서 작동하도록 기본 HTML 출력을 사용자 정의하고 API를 시작했습니다. News를 템플릿으로 사용하고 API에 대한 컨트롤러, 모델, 테이블 및 뷰를 만들었습니다. 그런 다음 매우 간단한 Twig 템플릿을 만들어 내 데이터의 JSON 표현을 다음과 같이 반환합니다.
{{ items|json_encode|raw }}
지금까지는 좋지만 jQuery와 함께 AJAX를 사용할 때 문제가 발생하는이 헤더가 반환됩니다.
Content-Type:text/html; charset=utf-8
나는 이것을 추가하는 간단한 경우라고 생각했지만 어디에 두어도 반환 된 헤더는 변경되지 않습니다.
$this->app->setHeader('Content-Type', 'application/json', true);
setHeader가 이름을 변경하는 것처럼 작동한다는 것을 알고 새 헤더가 반환되는 것을 볼 수 있습니다. 따라서 실행 후 나중에 덮어 쓰는 것으로 가정합니다.
그래서 내 질문은, 나는 이것에 대해 올바른 방법으로 가고 있습니까? 내보기가 잘못되었다고 생각되는 DefaultHtmlView를 확장합니다. DefaultJsonView를 만들어야합니까? 올바른 Content-Type을 설정하거나 JSON을 반환하는 더 좋은 방법이 있습니까?
Joomla Framework를 사용하여 API를 빌드하는 가장 좋은 방법에 대한 조언은 크게 감사하겠습니다.