获取邮箱授权码

找到qq邮箱中的设置 -> 账户 -> POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,

如果是已开启状态,关闭重新打开就好了,拿到授权码

安装依赖包

如果框架已经下好依赖查看composer.json(框架所用到的依赖)文件是否有

如果没有  就在这里添加上

!!!!  注意上边的是框架版本号下载的mail版本不要大于框架版本号(坑一)

"illuminate/mail": "~5.6",

添加上之后,执行命令 composer up ,  等待mail安装

框架没有composer.json   直接 composer require illuminate/mail  进行安装

配置文件

lumen框架安装好mail之后,目录中并不会有mail.php文件。这里需要我们手动做一个

放在config目录下

这是mail文件内容,直接无脑粘贴

<?phpreturn [/*|--------------------------------------------------------------------------| Mail Driver|--------------------------------------------------------------------------|| Laravel supports both SMTP and PHP's "mail" function as drivers for the| sending of e-mail. You may specify which one you're using throughout| your application here. By default, Laravel is setup for SMTP mail.|| Supported: "smtp", "sendmail", "mailgun", "mandrill", "ses",|            "sparkpost", "log", "array"|*/'driver' => env('MAIL_DRIVER', 'smtp'),/*|--------------------------------------------------------------------------| SMTP Host Address|--------------------------------------------------------------------------|| Here you may provide the host address of the SMTP server used by your| applications. A default option is provided that is compatible with| the Mailgun mail service which will provide reliable deliveries.|*/'host' => env('MAIL_HOST'),/*|--------------------------------------------------------------------------| SMTP Host Port|--------------------------------------------------------------------------|| This is the SMTP port used by your application to deliver e-mails to| users of the application. Like the host we have set this value to| stay compatible with the Mailgun e-mail application by default.|*/'port' => env('MAIL_PORT'),/*|--------------------------------------------------------------------------| Global "From" Address|--------------------------------------------------------------------------|| You may wish for all e-mails sent by your application to be sent from| the same address. Here, you may specify a name and address that is| used globally for all e-mails that are sent by your application.|*/'from' => ['address' => env('MAIL_FROM_ADDRESS'),'name' => env('MAIL_FROM_NAME', 'Example'),],/*|--------------------------------------------------------------------------| E-Mail Encryption Protocol|--------------------------------------------------------------------------|| Here you may specify the encryption protocol that should be used when| the application send e-mail messages. A sensible default using the| transport layer security protocol should provide great security.|*/'encryption' => env('MAIL_ENCRYPTION', 'null'),/*|--------------------------------------------------------------------------| SMTP Server Username|--------------------------------------------------------------------------|| If your SMTP server requires a username for authentication, you should| set it here. This will get used to authenticate with your server on| connection. You may also set the "password" value below this one.|*/'username' => env('MAIL_USERNAME'),'password' => env('MAIL_PASSWORD'),/*|--------------------------------------------------------------------------| Sendmail System Path|--------------------------------------------------------------------------|| When using the "sendmail" driver to send e-mails, we will need to know| the path to where Sendmail lives on this server. A default path has| been provided here, which will work well on most of your systems.|*/'sendmail' => '/usr/sbin/sendmail -bs',/*|--------------------------------------------------------------------------| Markdown Mail Settings|--------------------------------------------------------------------------|| If you are using Markdown based email rendering, you may configure your| theme and component paths here, allowing you to customize the design| of the emails. Or, you may simply stick with the Laravel defaults!|*/'markdown' => ['theme' => 'default','paths' => [resource_path('views/vendor/mail'),],],];

然后再env文件中配置一下

MAIL_DRIVER=smtp

MAIL_HOST=smtp.qq.com

MAIL_PORT=25  // 这里是你得端口号 建议刚开始写25,普通方式,425需要MAIL_ENCRYPTION进行加密

MAIL_USERNAME=********@qq.com   //  刚刚登录的邮箱

MAIL_PASSWORD=**********   //  把第一步获取到授权码放这里

MAIL_ENCRYPTION=null  // 加密方式  刚接触建议使用null  熟悉流程

MAIL_FROM_ADDRESS=*******@qq.com  // 发件人的邮箱

MAIL_FROM_NAME=发件人的名称

调用mail

在 bootstrap\app.php 中添加

$app->configure('mail');  // 调用到mail依赖
$app->singleton('mailer', function () use ($app) {  // 注册中间商,不写这会有问题return $app->loadComponent('mail', Illuminate\Mail\MailServiceProvider::class, 'mailer');
});

在控制器中写方法开始测试

注意:!!!!

不要用php artisan make:command 去生成控制器  Lumen对这个不友好需要配置很多东西

自己copy我给的代码就好

在路由文件中加上路由

// 邮箱测试
$router->get('mail/send','Api\MailController@send');

注意这里我是写在Controllers下的Api目录下的,这里根据自己的项目结构来

创建MailController.php 文件。写控制器

<?php
namespace App\Http\Controllers\Api;
use Laravel\Lumen\Routing\Controller;
use Illuminate\Http\Request;
use \App\Http\Services\Api\FaceService;
use Illuminate\Support\Facades\Mail;
class MailController extends Controller
{public function send() {$name = '我发的第一份邮件'; // Mail::send()的返回值为空,所以可以其他方法进行判断 Mail::send('emails.test',['name'=>$name],function($message){ $to = '******@qq.com'; $message ->to($to)->subject('邮件测试'); }); //  $to 是你要发送的邮箱地址// 返回的一个错误数组,利用此可以判断是否发送成功dd(Mail::failures());}
}

写完控制请后需要一份邮箱内容模板

在resources\views\创建emails目录,创建test.php

内容随便写一下

访问路由测试,能成功发送邮件自己多看看这些配置都代表什么意思

如果不能成功参考一下

laravel 邮箱教程以及可能出现的问题

Lumen 邮箱推送相关推荐

  1. java项目——发邮件之阿里云邮箱推送服务(一)

    最近做项目的时候用到了阿里云的邮箱推送.首先站在我自己的理解的角度,为什么要用阿里云邮箱推送服务? 首先从万网说起. 中国万网是中国最大的互联网基础服务提供商之一,服务范围涵盖基础的域名服务.主机服务 ...

  2. 【Home Assistant 之QQ邮箱推送提醒】

    [Home Assistant 之QQ邮箱推送提醒] 1. 前言 2. 操作流程 2.1 下载 2.2 安装 2.3 使用 2.4 手机推送 欢迎大家阅读2345VOR的博客[Home Assista ...

  3. 给女朋友做的每日消息推送微信公众号和邮箱推送

    前言: 最近看见好多做这个微信公众号推送的,其实不难很简单,自己也做了一个给女朋友,用了微信公众号推送和邮箱推送两个版本 网上大多是python版本,我用的是php分别写的微信和邮箱两个推送 项目地址 ...

  4. JAVA实现QQ邮箱推送邮件

    JAVA实现QQ邮箱推送邮件 文章目录 JAVA实现QQ邮箱推送邮件 准备 一.在项目中引入JavaMail包 二.开始实现 1.我们在Service类里面编写一个方法,这个方法接收两个参数:1收件人 ...

  5. 微博Rss邮箱推送系统

    微博Rss邮箱推送系统 微博Rss邮箱推送 ? Weibo subscription and sentiment analysis. 假期在家无聊,想到做一个微博订阅系统,可以将朋友or女朋友的微博更 ...

  6. 程序控制发送文件到邮箱_Kindle电子邮箱推送

    Kindle 推送支持的格式 目前 Kindle 推送仅支持以下几种格式.需要注意的是,AZW 和 AZW3 是两种不同的格式,虽然这两种格式 Kindle 设备都支持阅读,但是亚马逊的个人文档服务支 ...

  7. Java实现邮箱发送(阿里云邮箱推送)

    Java mail邮箱发送 1. 邮箱信息实体类 2. jar包依赖 3. 发送邮箱实现 绑定阿里云域名,创建域名账户,并配置解析域名账户,获得发送邮箱的权限,上限两百封,超出要¥- 阿里云邮件推送控 ...

  8. 天气预报,邮箱推送,提前预警,告别炎炎夏日下的束手无策

    1.分析url url="http://www.weather.com.cn/weather/101110101.shtml" 2.使用bs4查找所系信息,编写getdata 函数 ...

  9. 没有kindle 但要接收mox moe的邮箱推送

    mox moe升到LV2必须要有Kindle的推送邮箱地址并通过验证,解决方法: 手机下载kindle app,设置里有推送地址,app可以收到推送.

最新文章

  1. 10 ping不通widwos7 windwos_弱电老司机总结的10种视频监控系统故障解决方法,学会,事半功倍...
  2. 清华阿里联合发布:一个Few-shot场景的命名实体识别数据集
  3. 转载:Objective-C中的 instancetype 和 id 关键字
  4. ansible基础-Jinja2模版 | 过滤器
  5. kubernetes --- Glusterfs
  6. 在SAP CRM呼叫中心的搜索结果点击Edit按钮后的处理逻辑
  7. java 配置文件的路径_详解java配置文件的路径问题
  8. 明星开店都是稳定赚钱的生活,稳赚不赔
  9. SpringFox Swagger2注解基本用法
  10. 收集一些关于视频文件格式以及编码计算的一些知识
  11. 1万字说清楚Receiver Operating curve(ROC) 受试者操作特征曲线
  12. 开发者 发展 9 心智模式
  13. VirtualBox基础使用教程
  14. C语言实现矩阵卷积运算
  15. 机器人工程行业算制造业吗
  16. 抑制剂以及抗体偶联物在免疫检查点中的作用
  17. 计算机式硬盘录像机,全面分析PC式硬盘录像机十大问题
  18. STOP 0X0000007B蓝屏故障处理一例
  19. latte - 拿铁咖啡
  20. APPLE开发者客服电话

热门文章

  1. 每天定时采集(当前时间到月底)携程机票数据
  2. 多功能网络侦查OSINT工具,FinalRecon
  3. 苹果Xr用不了浏览器显示服务器已停止响应,苹果xrsafari浏览器用不了?
  4. miui12是Android版本,miui12基于安卓几版本开发的?miui12是安卓11吗[多图]
  5. C#实现自己的远程桌面控制工具
  6. dll修复工具下载,dll修复工具注意事项
  7. matlab实验学习心得,matlab实验心得体会-学习matlab的心得体会
  8. 买礼物(线段树+set维护)
  9. 生活集思录-大学门外的事情
  10. 鸟哥的Linux私房菜(基础班)第八章学习笔记