当前位置: 首页 > 后端技术 > PHP

【扩展推荐】laravel-download-link——生成下载链接

时间:2023-03-29 14:47:27 PHP

转载自Laravel论坛:https://learnku.com/laravel/t...这个扩展包可以为文件生成下载链接。安装后,您可以执行以下操作:$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->generate();//zkTu70fieUFZLGMoEP95l1RQfFj5zCOqHlM0XBTnc6ZaZTtm4GY5xPXGGLzLEAVe配置文件中的默认下载路径是“download”,所以如果你的域名是“example.com”,你应该使用这个链接:example.com/download/{link}//example.com/download/zkTu70fieUFZLGMoEP95l1RQfFj5zCOqHlM0XBTnc6ZaZTtm4GY5xPXGGLzLEAVe注意:您需要将{link}替换为生成的链接。您可以使用以下命令发布配置文件:phpartisanvendor:publish--provider="Armancodes\DownloadLink\DownloadLinkServiceProvider"--tag="config"这是发布的配置文件的内容:return[/*|---------------------------------------------------------------------|下载路线|----------------------------------------------------------------------||下载路径将添加到您的应用程序URL以供使用下载链接。|例如。如果您的应用程序URL是“example.com”,那么如果您将下载路径设置为|“下载”将是“example.com/download/{link}”。|*/'download_route'=>'下载',];使用您可以显式设置文件名以使用给定名称保存和下载:$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->fileName('new-text.txt')->生成();您还可以添加过期时间,以便链接仅在过期之前可用:$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->expire(now()->添加日期())->生成();您还可以指定是否只有经过身份验证的用户或访客使用此链接://仅限经过身份验证的用户$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->auth()->generate();//仅限访客$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->来宾()->生成();您可以将一个或多个IP地址列入黑名单(下载链接对这些IP地址无效):$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->limitIp('127.0.0.1')->生成();$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->limitIp(['127.0.0.1','127.0.0.2','127.0.0.3'])->产生();或者,您可以将一个或多个IP地址列入白名单(下载链接仅适用于这些IP地址):$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->allowIp('127.0.0.1')->generate();$link=DownloadLink::disk('public')->filePath('uploads/test.txt')->allowIp(['127.0.0.1','127.0.0.2','127.0.0.3'])->生成();配置文件中的默认下载路径是“download”,所以如果你的域是“example.com”,你应该使用这个链接:example.com/download/{link}//example.com/download/zkTu70fieUFZLGMoEP95l1RQfFj5zCOqHlM0XBTnc6ZaZTtm4GY5xPXGGLzLEAVe注意:您需要将{link}替换为生成的链接您可以像这样删除链接:DownloadLink::delete('link');//例如DownloadLink::delete('zkTu70fieUFZLGMoEP95l1RQfFj5zCOqHlM0XBTnc6ZaZTtm4GY5xPXGGLzLEAVe');您可以使用以下命令删除数据库中的过期链接:phpartisandownload-links:remove-过期讨论请前往专业的Laravel论坛:https://learnku.com/laravel/t...