[英]Laravel 4 Response::download() from external url source
[英]Download files from external url in Laravel/PHP
我想使用外部 url 下載文件,點擊我正在使用的下面的代碼,現在它工作正常錯誤,但文件沒有在任何地方下載。
public function checkCount(Request $request)
{
$userid = Session::get('UserId');
$count = DB::table('download_details')
->where('type','=',$request->type)
->where('user_id','=',$userid)
->get()
// echo "<pre>"; print_r($count); die;
->count();
if($count >= 2)
{
echo 0;
}
else
{
$data = array(
'corporate_id' => $request->corporateid,
'user_id' => Session::get('UserId'),
'ip_address' => \Request::ip(),
'mac_address' => '',
'type' => $request->type,
'count' => '',
'date' => date('Y-m-d'),
'status' => 1
);
$insert = DB::table('download_details')->insert($data);
$name = basename($request->url);
$path = $request->url;
// echo $path; die;
$tempImage = tempnam(sys_get_temp_dir(), $path);
copy($request->url, $tempImage);
return response()->download($tempImage, $name);
}
}
我的 Ajax 代碼
function saveData(type,url)
{
var corporateid = $('#corporateid').val();
// alert(type);
$.ajax({
type:'POST',
url:'/check-count',
data:{'_token':'{{csrf_token()}}',corporateid:corporateid,type:type,url:url},
success:function(response){
// alert(response);
if(response == 0)
{
$('#download_error_message').show();
$('#download_error_message').html("Download Limit Exceeded");
$('#download_error_message').fadeOut(4000);
}
else
{
alert("Success");
}
}
});
}
其他部分顯示我正在下載文件。 沒有錯誤是 ajax 請求,但文件根本沒有下載。
文件沒有下載。請幫忙
希望它會奏效。
public function checkCount(Request $request)
{
$userid = Session::get('UserId');
$count = DB::table('download_details')
->where('type','=',$request->type)
->where('user_id','=',$userid)
->get()
// echo "<pre>"; print_r($count); die;
->count();
if($count >= 2)
{
echo 0;
}
else
{
$data = array(
'corporate_id' => $request->corporateid,
'user_id' => Session::get('UserId'),
'ip_address' => \Request::ip(),
'mac_address' => '',
'type' => $request->type,
'count' => '',
'date' => date('Y-m-d'),
'status' => 1
);
$insert = DB::table('download_details')->insert($data);
$name = basename($request->url);
$path = $request->url;
// echo $path; die;
$tempImage = tempnam(sys_get_temp_dir(), $path);
copy($request->url, $tempImage);
$mimeType = mime_content_type($tempImage);
$headers = ["Content-Type: {$mimeType}"];
return Response::download($tempImage, $name, $headers);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.