【发布时间】:2020-12-01 23:15:15
【问题描述】:
我正在使用 Laravel,我想从 api 获取文件(提供令牌和一些标头),然后将其直接转发到响应而不在本地保存文件。
目前我正在这样做:
$response = $client->get($requestUrl, [
'query' => [
'hash' => $hash
],
'headers' => [
'_token_' => $oauthConfig['api_token'],
'_token_issuer_' => 1
],
'stream' => true,
]);
$type = $response->getHeader('Content-Type')[0];
$body = $response->getBody();
$response = new StreamedResponse(function () use ($body) {
while (!$body->eof()) {
echo $body->read(1024);
}
});
$response->headers->set('Content-Type', $type);
return $response;
但我遇到了这个异常:
LogicException
The content cannot be set on a StreamedResponse instance.
非常感谢任何帮助/指导! 谢谢。
【问题讨论】: