使用查询字符串时下载属性损坏的文件名
download attribute corrupt file name when using query string
我有一个按以下方式调用的文件:/storage/1_aviary-image-1429352137570.jpeg?1646327099
。在 blade 视图中,我创建了一个下载 link:
<a href="{{ $item['url'] }}" class="btn btn-sm btn-default"
download="{{ $item['url'] }}" target="_blank">
<span class="fa fa-download"></span>
</a>
当我下载文件时,出于某种原因我得到:_storage_1_aviary-image-1429352137570.jpeg_1646327099
如您所见,?
已替换为 _
。
我从来没有遇到过这个问题,有人可以帮助我了解这是怎么回事吗?
亲切的问候
问题是 download
的属性 value 是可选的,设置时将设置下载文件的名称。如果您不设置它,那么文件名将是您在 href
值中为其指定的名称。
即下面有效,没有设置download
的值:
<a href="somefile.txt" download>
由于 ?
不是有效的文件名字符,因此将其优雅地替换为下划线。
解决方案是不将 ?
包含在 download
的值中,而是将其保留在您的 href
值中。
解决方案:
<a href="{{ $item['url'] }}" class="btn btn-sm btn-default"
download="{{ $item['filename'] }}" target="_blank">
<span class="fa fa-download"></span>
</a>
其中 $item['filename']
是要下载的文件的名称 没有 ?
和时间戳。
我有一个按以下方式调用的文件:/storage/1_aviary-image-1429352137570.jpeg?1646327099
。在 blade 视图中,我创建了一个下载 link:
<a href="{{ $item['url'] }}" class="btn btn-sm btn-default"
download="{{ $item['url'] }}" target="_blank">
<span class="fa fa-download"></span>
</a>
当我下载文件时,出于某种原因我得到:_storage_1_aviary-image-1429352137570.jpeg_1646327099
如您所见,?
已替换为 _
。
我从来没有遇到过这个问题,有人可以帮助我了解这是怎么回事吗?
亲切的问候
问题是 download
的属性 value 是可选的,设置时将设置下载文件的名称。如果您不设置它,那么文件名将是您在 href
值中为其指定的名称。
即下面有效,没有设置download
的值:
<a href="somefile.txt" download>
由于 ?
不是有效的文件名字符,因此将其优雅地替换为下划线。
解决方案是不将 ?
包含在 download
的值中,而是将其保留在您的 href
值中。
解决方案:
<a href="{{ $item['url'] }}" class="btn btn-sm btn-default"
download="{{ $item['filename'] }}" target="_blank">
<span class="fa fa-download"></span>
</a>
其中 $item['filename']
是要下载的文件的名称 没有 ?
和时间戳。