1

我正在尝试在 Symfony 3.2.6 中发出和接收 PSR-7 样式的响应我一直在尝试遵循 dunglas 关于该主题的原始帖子,这使得它看起来相当简单。使用-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;
    }
}

当我尝试这个时,我在浏览器中得到以下异常:控制器必须返回一个响应(Object(Zend\Diactoros\Response) given)。

我认为 Zend\Diactoros\Response 对象应该与文章中的示例兼容。它引用了 sensio/framework-extra-bundle 使其成为可能,所以我想知道是否缺少我的配置。

4

0 回答 0