众所周知,Cloudflare有一个邮件转发。
另外,worker也可以使用catch all接收任意邮件,实现临时邮箱。
https://github.com/dreamhunter2333/cloudflare_temp_email
-----
那么,能不能发呢。2022年05/13之前不能。之后CF加了这个功能。
参考:
https://developers.cloudflare.com/email-routing/email-workers/send-email-workers/
https://blog.cloudflare.com/sending-email-from-workers-with-mailchannels/
但是没有现成的开源项目。
-----
官方的示例代码:
```js
import { EmailMessage } from “cloudflare:email”;
import { createMimeMessage } from “mimetext”;
export default {
async fetch(request, env) {
const msg = createMimeMessage();
msg.setSender({ name: “GPT-4”, addr: “<SENDER>@example.com” });
msg.setRecipient(“<RECIPIENT>@example.com”);
msg.setSubject(“An email generated in a worker”);
msg.addMessage({
contentType: ‘text/plain’,
data: Congratulations, you just sent an email from a worker.
});
var message = new EmailMessage(
“<SENDER>@example.com”,
“<RECIPIENT>@example.com”,
msg.asRaw()
);
try {
await env.SEB.send(message);
} catch (e) {
return new Response(e.message);
}
return new Response(“Hello Send Email World!”);
},
};
```
-----
另外,这个是给验证过的邮箱发邮件的,可以作为自动通知邮件,给管理员邮箱自动发邮件,比如自动提示服务器状态等等的。被打提醒,掉线提醒等等