Swift10Exception: Unable to open file for reading laravel 5.8

Currently working on a platform that allows people send files to people's mail, on upload of the files, the file get stored in Amazon S3 bucket then retrieved to be sent to the email of the uploader. The issue I am having is anytime I tried to retrieve the file from Amazon S3 bucket, I get this error: "Swift10Exception: Unable to open file for reading".

Document Upload Controller

public function store(Request $request)
{
//
$this->validate($request,[
'recipient_email' => 'required',
'file' => 'required'
]);

$files = $request['file'];
$id = mt_rand();
if($files){
foreach($files as $file) {
$docName = $file->getClientOriginalName();
$originalName = pathinfo($docName,PATHINFO_FILENAME);
$extension = $file->getClientOriginalExtension();
$filename = mt_rand().'.'.$extension;
$filePath = 'documents/' . $id .'/'.$filename;
Storage::disk('s3')->put($filePath, file_get_contents($file), 'public');
$data[] = $originalName;
}
}
$name = implode(',' , $data);
$document = new Document();
$document->file = $name;
$document->title = $name;
$document->message = $request['message'];
$document->user_id = Auth::user()->id;
$document->transaction_id = $id;
$document->recipient_email = $request['recipient_email'];
$document->save();
$files = Storage::disk('s3')->files('documents/'. $id);
$sender = Auth::user()->email;
$message = $request['message'];


Mail::to($request['recipient_email'])->send(new SentFiles($files, $sender, $message));

return redirect('/dashboard')->with('success', 'Document Sent and Saved Successfully!');

}

App\Mail\SentFiles.php

public $attachment;
public $sender;
public $content;

/**
* Create a new message instance.
*
* @return void
*/
public function __construct($attachment, $sender, $content)
{
//
$this->attachment = $attachment;
$this->sender = $sender;
$this->content = $content;
}

/**
* Build the message.
*
* @return $this
*/
public function build()
{


$email = $this->view('emails.attached')
->from($this->sender);
foreach ($this->attachment as $item) {

$email->attach($item);

}

return $email;
}


from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/2W3cQlb
via IFTTT

تعليقات

المشاركات الشائعة من هذه المدونة

I am unable to figure out how to create payment collection request, after a form has been submitted in laravel

laravel, mysql transaction not working after failed one time