【发布时间】:2022-11-26 15:12:32
【问题描述】:
我想从 Shopware 6 管理员实现 CSV 导出。我有一个按钮,想要打开一个新窗口并获取一个 CSV 文件。
我实现了一个控制器:
/**
* @Route(
* "/api/winkelwagen/export/csv/{id}",
* methods={"GET"},
* defaults={"auth_required"=true, "_routeScope"={"api"}}
* )
*/
public function export(string $id, Context $context, Request $request): Response
{
/** @var PromotionEntity $promo */
$response->setContent('csv file');
return $response;
}
但是要调用这个控制器,你需要登录,这是完全合理的。
我在管理中的按钮当前打开一个新窗口并打开页面:
window.open('http://www.fabian-blechschmidt.de', '_blank');
这当然不适用于 api url,因为您需要进行身份验证。
所以我的问题是:如何实现此身份验证并在后端获取 CSV 文件? :-)
也许我的方法完全被打破了——很高兴得到一个更好的主意!
【问题讨论】: