Cách download file image .png .jpg... từ url bằng js mà không bị load trang @@ ??
Mình đang tìm cách download file từ url thì thấy trên mạng chỉ là thêm attr download vào thẻ </a>, dùng cách này để download file định dạng khác thì được nhưng lúc download file png jpg thì trang web của mình lại load ra cái hình đấy mà không tải về luôn @@, đem đến trải nghiệm khá khó chịu !!
Các bác có biết làm thế nào để download tất cả các định dạng file đều theo kiểu như trên hình k ạ!!
link file của mình thì có dạng như này : https://xyxyxyx.s3.amazonaws.com/xỹyxyxyxyx/149/bmw27_cpu (2).blend0001.png?AWSAccessKeyId=ASIA3E3CZEO6XXVUZH5W&Expires=1597408239&Signature=eDF6i9VGl0V4SOrlVm6u2Uy5alU%3D&x-amz-security-token=FwoGZXIvYXdzENf%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaDCwmUBwtmFuDj8cKaCK0AZmOcGBuSGd8JyDdRRbsooO1o8AuLgUh1tzemo9FMIIop5alotbCcUW%2BIheibBIgHkeypf2FX4i1H6%2FEePWX%2BbFjUkUJ8riUNNAPvBLK6%2Fyc%2BHUPVEKEF0BSV0F7z9LR3LbHrtTeNhgEJ84thzu1iBflZu10rGxeqgIfBQ%2F9fjS%2FjphrsMpTtfNH0p1xys4Sudz71%2BsemWt1a70mF6ukEwC%2FKTuDU90%2BwvzDY0PbCh%2B8yhf6iyiAwdj5BTItO1UrnWVahr973qDI15tvyww1oFuFFZJ5%2Fg07yJfur189yNymrznnMwD3HrGf
1 CÂU TRẢ LỜI
Mình nghĩ vấn đề ở đây không phải do định dạng file mà không thể download được. Lý do không download được ảnh là do:
"Chrome 65+ and Firefox only support same-origin download links".
Vì ảnh đang để ở s3 không same-origin với server của b. còn các file zip không biết có phải b để trên cùng server của bạn không?
Cách giải quyết là xử lý download file ở trên server luôn:
Route::get('/download/{path}', 'DownloadController')->name('download');
<?php
namespace App\Http\Controllers;
use Storage;
class DownloadController extends Controller
{
public function __invoke($path)
{
return Storage::download($path);
}
}
<a href="{{ route('download', ['path'=>'duong-dan-anh']) }}" download>
download file
</a>
Nếu dùng laravel nhé
ok thks man!!