我的一个端点要求返回一个PDF文件。通常,默认情况下为JSON。
您认为使用if ($request->header('accept') === 'application/pdf')
返回PDF文件是否很好?它打破了单一责任吗?
如果我有很多这样的例外怎么办?对于许多方法而言,拥有大量if / else语句太复杂了。您有什么建议?
答案 0 :(得分:2)
您可以创建中间件并将其应用于单个端点或一组端点。这样一来,一切都会井井有条,将来也很容易管理。
答案 1 :(得分:0)
在响应的最后为该API中的标头函数设置php标头,并为前端检查标头contentType代表该标头
答案 2 :(得分:0)
您必须制作一个中间件并将其添加到受保护的$ middleware数组中的kernel.php中,并在“处理”功能中执行此代码
$response = $next($request);
if ($response instanceof ClassNameFromWhichObjectIsMatch )
return $response;
// add other headers
// $response->header($key, $value);
return $response;