首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将文件(来自s3)附加到邮件

将文件(来自s3)附加到邮件
EN

Stack Overflow用户
提问于 2020-09-25 23:16:17
回答 2查看 961关注 0票数 0

这就是我正在尝试做的(使用laravel-medialibrary):

代码语言:javascript
复制
        $message = Message::find(50);
        $media = $message->getFirstMedia();

        //todo can be more than one
        $fileName = $media->id . '/' . $media->file_name;

        $file = Storage::disk('s3')->get($fileName);

        //create mailable

        $mail =  (new NotificationMail($this->template, new NotificationLog()))
            ->mailer('smtp')
            ->from('test@fdsf.co.uk', 'A. Test')
            ->subject('Any Luck')
            ->attach($file);
            

        $response =  Mail::to('fsdafd@gfdsg.com')->send($mail);

尝试过多种方式,但邮件中的附件始终只是文本:

代码语言:javascript
复制
--_=_swift_1601042677_ccb98caa4058cf66bc6face36e70ef0a_=_ Content-Type: application/octet-stream; name="=?utf-8?Q?
EN

回答 2

Stack Overflow用户

发布于 2020-09-26 01:49:51

你可以这样试一下

代码语言:javascript
复制
 $mail =  (new NotificationMail($this->template, new NotificationLog()))
                ->mailer('smtp')
                ->from('test@fdsf.co.uk', 'A. Test')
                ->subject('Any Luck')
                ->attachFromStorage('/path/to/file', 'name.pdf', ['mime' => 'application/pdf']);

或者,您可以将路径附加到电子邮件

代码语言:javascript
复制
$file = Storage::disk('s3')->url($fileName);
票数 0
EN

Stack Overflow用户

发布于 2020-09-28 18:10:54

这简直是胡说八道。

attachFromStorage正在工作,但之后邮件被格式化了。

这不知何故将身体设置为空的,从而阻止了附件的工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64066911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档