тонкий каркас 3, не удается отобразить HTML-страницу - PullRequest
0 голосов
/ 01 мая 2018

Я использую Twig-View для рендеринга HTML, в настоящее время я не могу изменить тип контента, возвращаемый браузеру, я вижу, что тип контента, возвращаемый slim как json, вместо контента HTML, следовательно, все коды отображаются в браузере

 $app->get('/',function(Request $req,Response $res,array $args) use ($app){
        $container = $app->getContainer();
        $container->view->render($res, 'test.html',[]);
    });

введите описание изображения здесь

Ответы [ 2 ]

0 голосов
/ 02 мая 2018

дополнение к Zamrony P. Juhara я обнаружил, что промежуточное ПО, которое я поставил, редактировало ответ, который будет возвращен как контент json -> withHeader («Content-Type», «application / json»)

/*
CORS
*/
$app->add(function ($req, $res, $next) {
    $response = $next($req, $res);
    return $response
            //->withHeader("Content-Type", "application/json")
            //->withHeader('Access-Control-Allow-Origin', 'http://localhost:2222/')
            ->withHeader('Access-Control-Allow-Origin', '*')
            ->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization')
            ->withHeader('Access-Control-Allow-Methods', 'GET,POST,PUT,DELETE,PATCH,OPTIONS');
}); 

так что браузер только получал ответ на контент json, следовательно, он выводил все коды как контент json вместо Content-Type: "text / html", и это решило мою проблему

0 голосов
/ 01 мая 2018

Попробуйте вернуть ответ так:

return $container->view->render($res, 'test.html', []);
...