【转】邮件通知API
这天在冲浪的时候发现一个好用的邮件api!
而且还是公益的!
学会了快去搭配while true与你的好基友 友 好 互 动 扒!
邮件通知API使用
支持markdown语法,在后台会自动转换为HTML语言执行发送
(在发起请求时需要转换为URL 编码,才可以正确启用markdown)
目前暂且只支持以下参数:
email:要接受的邮件地址
title:邮件主题
desp:邮件内容
uuid:验证密码(111)
调用
最简单的URL直接调用(可以直接浏览器请求测试)
https://api.mwm.moe/mail/mail.php?title=主题&desp=内容&email=邮箱地址&uuid=111
PHP调用示例:
<?php
// 邮件反馈
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// 获取表单数据
$title = "API反馈";
$email = "admin@mwm.moe";
$uuid = "111";
$txt1 = $_POST["txt1"];
$txt2 = $_POST["txt2"];
// 拼接API链接
$api_url = "https://api.mwm.moe/mail/mail.php?desp=".urlencode("反馈建议:{$txt1}\n\n订阅邮箱:{$txt2}")."&title={$title}&email={$email}"&uuid={$uuid};
// 发送POST请求
$ch = curl_init($api_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
}
?>
<form method="post" action="" novalidate>
<input title="那张图低清晰度?有什么奇妙的建议或想法?" type="text" name="txt1" id="fankui" placeholder="反馈建议" required>
<input id="biaodanan" class="btn transparent-btn" type="submit" value="提交" title="投入站长邮箱">
<br>
<input title="输入订阅邮箱" type="text" name="txt2" id="fankui" placeholder="输入订阅邮箱" required>
</form>
后端
实际搭建时需自行部署和引用PHPMailer和autoload以及Parsedown。
<?php
require 'PHPMailer.php';
require 'SMTP.php';
//引入Markdown转换html器
require_once 'vendor/autoload.php';
use Parsedown;
// 获取链接参数
$title = isset($_REQUEST['title']) ? $_REQUEST['title'] : '';
$desp = isset($_REQUEST['desp']) ? $_REQUEST['desp'] : '';
$email = isset($_REQUEST['email']) ? $_REQUEST['email'] : '';
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo '请检查邮箱地址';
exit;
}
//输入的Markdown文本
$markdownText = $desp;
try {
// 创建Parsedown实例
$parser = new Parsedown();
// 将Markdown转换为HTML
$html = $parser->text($markdownText);
// 创建一个新的 PHPMailer 实例
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->CharSet = 'UTF-8';
// 设置邮件服务器
$mail->isSMTP();
$mail->Host = 'smtp.mwm.moe'; //SMTP 服务器地址
$mail->SMTPAuth = true;
$mail->Username = 'mail@mwm.moe'; //SMTP 邮箱用户名
$mail->Password = 'xxx'; //SMTP 邮箱密码
$mail->SMTPSecure = 'ssl'; //加密
$mail->Port = 465; //端口号
// 设置发件人和收件人
$mail->setFrom('mail@mwm.moe', '栗子邮件通知');
$mail->addAddress($email, $email); // 收件人邮箱地址
// 设置邮件主题和内容
$mail->isHTML(true);
$mail->Subject = $title;
$mail->Body = "$html";
// 发送邮件
if ($mail->send()) {
echo '提交成功';
} else {
echo '发送邮件失败';
}
} catch (Exception $e) {
echo $e->getMessage();
}
?>


浙公网安备 33010602011771号