0

我注意到 Opa API 有一个 SMTPServer 扩展。我不完全确定如何使用它。邮件解析的哪些功能是内置的,哪些必须写在处理程序中?我很欣赏这个扩展的“你好世界”风格的例子。

4

1 回答 1

2

此代码段应该对您有所帮助。它是从http://forum.opalang.org 回复电子邮件功能的代码中提取的:

function convert_to_utf8(s, b) {
    match (Iconv.convert_to_utf8(s, b)) {
    case { some : s }: s
    default: log_error("..."); ""
    }
}

function raw_handler(to, content) {
    ...
    message = Mime.parse(content);
    match (message) {
    case { some : content }:
         content = Mime.get_text(content, convert_to_utf8);
         ....
    default: void
    ...
}

function handler(string from, list(string) to, string raw_content) {
    List.fold({
      function(to, acc) _ = raw_handler(to, raw_content); acc
      }, to, {success})
}

SmtpServer.start(0.0.0.0, 2525, {none}, handler)
于 2012-09-29T17:49:19.067 回答