我试图在Symfony 3.2.6中发出并接收PSR-7风格的回复。我一直试图跟随dunglas关于这个主题的原始帖子,这看起来很简单。 using-psr-7-in-symfony
我添加了
"symfony/psr-http-message-bridge": "v1.0.0",
"zendframework/zend-diactoros": "1.3.10"
到我的composer.json
我的控制器如下:
namespace AppBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Zend\Diactoros\Response;
class DefaultController extends Controller
{
public function isAllowedAction()
{
$rep = ['status' => 1, 'message' => 'access granted'];
$response = new Response();
$response->getBody()->write(json_encode($rep));
return $response;
}
}
当我尝试这个时,我在浏览器中得到以下异常:控制器必须返回一个响应(给定的对象(Zend \ Diactoros \ Response))。
我认为Zend \ Diactoros \ Response对象应该与本文中的示例兼容。它引用了sensio / framework-extra-bundle作为可能,所以我想知道是否有一个我失踪的配置。