Symfony2-如何设置自定义CORS标头? [英] Symfony2 - how can I set custom CORS Headers?
本文介绍了Symfony2-如何设置自定义CORS标头?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在我的DefaultController中设置以下TWIG模板标题:
I want to set following Headers for TWIG Template from within my DefaultController:
header('Access-Control-Allow-Methods: GET, POST, OPTIONS');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Origin: http://www.mywebsite.com');
header('Access-Control-Allow-Headers: Content-Type, *');
任何建议如何做?
推荐答案
来自这篇文章:
CorsListener.php
<?php
namespace MyCorp\MyBundle\Listener;
use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
class CorsListener
{
public function onKernelResponse(FilterResponseEvent $event)
{
$responseHeaders = $event->getResponse()->headers;
$responseHeaders->set('Access-Control-Allow-Headers', 'origin, content-type, accept');
$responseHeaders->set('Access-Control-Allow-Origin', '*');
$responseHeaders->set('Access-Control-Allow-Methods', 'POST, GET, PUT, DELETE, PATCH, OPTIONS');
}
}
services.yml
app.cors_listener:
class: MyCorp\MyBundle\Listener\CorsListener
tags:
- { name: kernel.event_listener, event: kernel.response, method: onKernelResponse }
这篇关于Symfony2-如何设置自定义CORS标头?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文