Lumen 邮箱推送
获取邮箱授权码
找到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 邮箱推送相关推荐
- java项目——发邮件之阿里云邮箱推送服务(一)
最近做项目的时候用到了阿里云的邮箱推送.首先站在我自己的理解的角度,为什么要用阿里云邮箱推送服务? 首先从万网说起. 中国万网是中国最大的互联网基础服务提供商之一,服务范围涵盖基础的域名服务.主机服务 ...
- 【Home Assistant 之QQ邮箱推送提醒】
[Home Assistant 之QQ邮箱推送提醒] 1. 前言 2. 操作流程 2.1 下载 2.2 安装 2.3 使用 2.4 手机推送 欢迎大家阅读2345VOR的博客[Home Assista ...
- 给女朋友做的每日消息推送微信公众号和邮箱推送
前言: 最近看见好多做这个微信公众号推送的,其实不难很简单,自己也做了一个给女朋友,用了微信公众号推送和邮箱推送两个版本 网上大多是python版本,我用的是php分别写的微信和邮箱两个推送 项目地址 ...
- JAVA实现QQ邮箱推送邮件
JAVA实现QQ邮箱推送邮件 文章目录 JAVA实现QQ邮箱推送邮件 准备 一.在项目中引入JavaMail包 二.开始实现 1.我们在Service类里面编写一个方法,这个方法接收两个参数:1收件人 ...
- 微博Rss邮箱推送系统
微博Rss邮箱推送系统 微博Rss邮箱推送 ? Weibo subscription and sentiment analysis. 假期在家无聊,想到做一个微博订阅系统,可以将朋友or女朋友的微博更 ...
- 程序控制发送文件到邮箱_Kindle电子邮箱推送
Kindle 推送支持的格式 目前 Kindle 推送仅支持以下几种格式.需要注意的是,AZW 和 AZW3 是两种不同的格式,虽然这两种格式 Kindle 设备都支持阅读,但是亚马逊的个人文档服务支 ...
- Java实现邮箱发送(阿里云邮箱推送)
Java mail邮箱发送 1. 邮箱信息实体类 2. jar包依赖 3. 发送邮箱实现 绑定阿里云域名,创建域名账户,并配置解析域名账户,获得发送邮箱的权限,上限两百封,超出要¥- 阿里云邮件推送控 ...
- 天气预报,邮箱推送,提前预警,告别炎炎夏日下的束手无策
1.分析url url="http://www.weather.com.cn/weather/101110101.shtml" 2.使用bs4查找所系信息,编写getdata 函数 ...
- 没有kindle 但要接收mox moe的邮箱推送
mox moe升到LV2必须要有Kindle的推送邮箱地址并通过验证,解决方法: 手机下载kindle app,设置里有推送地址,app可以收到推送.
最新文章
- 10 ping不通widwos7 windwos_弱电老司机总结的10种视频监控系统故障解决方法,学会,事半功倍...
- 清华阿里联合发布:一个Few-shot场景的命名实体识别数据集
- 转载:Objective-C中的 instancetype 和 id 关键字
- ansible基础-Jinja2模版 | 过滤器
- kubernetes --- Glusterfs
- 在SAP CRM呼叫中心的搜索结果点击Edit按钮后的处理逻辑
- java 配置文件的路径_详解java配置文件的路径问题
- 明星开店都是稳定赚钱的生活,稳赚不赔
- SpringFox Swagger2注解基本用法
- 收集一些关于视频文件格式以及编码计算的一些知识
- 1万字说清楚Receiver Operating curve(ROC) 受试者操作特征曲线
- 开发者 发展 9 心智模式
- VirtualBox基础使用教程
- C语言实现矩阵卷积运算
- 机器人工程行业算制造业吗
- 抑制剂以及抗体偶联物在免疫检查点中的作用
- 计算机式硬盘录像机,全面分析PC式硬盘录像机十大问题
- STOP 0X0000007B蓝屏故障处理一例
- latte - 拿铁咖啡
- APPLE开发者客服电话
热门文章
- 每天定时采集(当前时间到月底)携程机票数据
- 多功能网络侦查OSINT工具,FinalRecon
- 苹果Xr用不了浏览器显示服务器已停止响应,苹果xrsafari浏览器用不了?
- miui12是Android版本,miui12基于安卓几版本开发的?miui12是安卓11吗[多图]
- C#实现自己的远程桌面控制工具
- dll修复工具下载,dll修复工具注意事项
- matlab实验学习心得,matlab实验心得体会-学习matlab的心得体会
- 买礼物(线段树+set维护)
- 生活集思录-大学门外的事情
- 鸟哥的Linux私房菜(基础班)第八章学习笔记