Amir Alsaeed نشر 12 يونيو 2021 أرسل تقرير نشر 12 يونيو 2021 لدي عدد من الملفات التي يتم رفعها إلى خادم الويب وإظهارها للمستخدمين، وأقوم باستخدام الكود التالي لإرسال الملف إلى المستخدم: return Response::download($path, $filename, $headers); ولكن يتم تحميل الملف مباشرةً إلى جهاز المستخدم، كيف يمكنني إتاحة إمكانية استعراض ملف PDF في متصفح المستخدم قبل التحميل بدلاً من تحميله بشكل مباشر؟ هل يوجد طريقة أخرى لإرسال الملفات في لارافل؟ اقتباس
0 سمير عبود نشر 12 يونيو 2021 أرسل تقرير نشر 12 يونيو 2021 منذ الإصدار laravel 5.2 أصبح بالإمكان إستخدام التابع file لإرجاع الملف دون تحميله في جهاز العميل بهذا الشكل: return response()->file($pathToFile); return response()->file($pathToFile, $headers); كما يُمكن إستخدام الطريقة التالية في حالة كنت تستخدم إصدار أقدم: $filename = 'test.pdf'; $path = storage_path($filename); return Response::make(file_get_contents($path), 200, [ 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'inline; filename="'.$filename.'"' ]); لأنه بإستخدامك للتابع download فإنه تلقائياً سيتم إستخدام القيمة attachment للخاصية Content-Disposition التي تفرض على المتصفح تحميل الملف. اقتباس
0 محمد أيت لعرايك نشر 12 يونيو 2021 أرسل تقرير نشر 12 يونيو 2021 إدا كنت تستعمل إصدار laravel أحدث من 5.5 فيمكنك ببساطة إستخدام الطريقة التالية return Storage::response($path_to_file); أو إدا كان الملف تم تخزينه محليًا ، يمكنك أيضًا استخدام الطريقة التالية: return response()->file($path_to_file); اقتباس
السؤال
Amir Alsaeed
لدي عدد من الملفات التي يتم رفعها إلى خادم الويب وإظهارها للمستخدمين، وأقوم باستخدام الكود التالي لإرسال الملف إلى المستخدم:
return Response::download($path, $filename, $headers);
ولكن يتم تحميل الملف مباشرةً إلى جهاز المستخدم، كيف يمكنني إتاحة إمكانية استعراض ملف PDF في متصفح المستخدم قبل التحميل بدلاً من تحميله بشكل مباشر؟ هل يوجد طريقة أخرى لإرسال الملفات في لارافل؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.