【发布时间】:2020-05-24 04:49:38
【问题描述】:
我将图像存储在 redis 中。
$image = $cache->remember($key, null, function () use ($request, $args) {
$image = $this->get('image');
$storage = $this->get('storage');
return $image->load($storage->get($args['path'])->read())
->withFilters($request->getQueryParams())
->stream();
});
并试图找回它:
return (new Response())
->withHeader('Content-Type', 'image/png')
->withBody($image);
它给了我这个错误:
Return value of Slim\Handlers\Strategies\RequestResponse::__invoke()
must implement interface Psr\Http\Message\ResponseInterface, string returned
$image 变量是该图像的字节数。如何将这些字节转换为流?
【问题讨论】:
-
响应应该是
Psr\Http\Message\ResponseInterface的实例,$image应该是Psr\Http\Message\StreamInterface的实例。 -
我理解错误,我的问题是如何将文本字符串转换为实际流?