mwagena / gmail-api-wrapper
Laravel 5 对 Gmail API 的封装
dev-develop
2017-05-16 18:12 UTC
Requires
- google/apiclient: ^2.0
- illuminate/support: 5.0.*|5.1.*|5.2.*|5.3.*|5.4.*
- nesbot/carbon: ^1.22
- swiftmailer/swiftmailer: ^5.4
Requires (Dev)
- php: >=5.5.9
This package is not auto-updated.
Last update: 2024-09-23 07:44:30 UTC
README
设置API
步骤1:启用Gmail API
- 使用此向导在Google开发者控制台中创建或选择一个项目,并自动启用API。点击继续,然后点击凭证。
- 在“向项目添加凭证”页面,点击取消按钮。
- 在页面顶部,选择OAuth同意屏幕选项卡。选择一个电子邮件地址,如果尚未设置,则输入一个产品名称,然后点击保存按钮。
- 选择“凭证”选项卡,点击“创建凭证”按钮,然后选择“OAuth客户端ID”。
- 选择应用程序类型 webapp,输入您选择的名字,填写项目重定向URI,然后点击创建按钮。
- 您将现在收到一个 客户端ID 和 客户端密钥,请复制并粘贴这些设置以供以后使用。
步骤2:使用客户端ID和密钥登录
初始化Gmail类
$gmail = new Gmail();
$gmail->getAuthUrl();
使用前一个调用的返回代码创建访问+刷新令牌
$gmail->makeAccessToken($code);
步骤3:充分利用它
初始化连接
$gmail = MartijnWagena\Gmail\Mail::create()
->setAccessToken($access_token, $refresh_token)
->setStartDate($date);
检查是否需要刷新令牌
$gmail->isAccessTokenExpired();
从“setStartDate”开始获取所有消息,您只收到消息ID
$gmail->fetch();
要获取消息的详细信息,请使用以下代码
$gmail->getMessage($id, $threadId);
使用API发送邮件
$gmail = MartijnWagena\Gmail\Send::create()->setAccessToken($access_token, $refresh_token);
$gmail->sendMail(
[['email' => 'name@mail.com']],
[['email' => 'name2@mail.com']],
[['email' => 'name3@mail.com']],
'your subject',
'your message body',
'inreplytomessageId',
[] // array of attachments of type File
);
步骤5:(如果需要)撤销访问权限
$gmail = MartijnWagena\Gmail::create()->setAccessToken($access_token, $refresh_token);
$gmail->revokeAccess();