Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parsing IMAP解析器或服务器示例_Parsing_Email_Go_Imap - Fatal编程技术网

Parsing IMAP解析器或服务器示例

Parsing IMAP解析器或服务器示例,parsing,email,go,imap,Parsing,Email,Go,Imap,我被指派用Go构建一个IMAP服务器,经过一点研究,我想我必须自己构建它,所以在我做任何事情之前,我想知道你们的想法。我需要一些IMAP解析器或服务器示例。提前谢谢 IMAP在这方面非常类似,所以请查看它是如何实现的 服务器端IMAP实现与客户端的不同之处在于,它大部分时间响应命令,而不是启动命令,所以请查看。看看,或者IMAP并不是那么简单:命令可以交织在一起,根据标记,对多个命令的响应是混合的,服务器可以随时发送未标记的消息,提供状态更新。您需要在新服务器中支持这一点,以处理诸如IDLE命令

我被指派用Go构建一个IMAP服务器,经过一点研究,我想我必须自己构建它,所以在我做任何事情之前,我想知道你们的想法。我需要一些IMAP解析器或服务器示例。提前谢谢

IMAP在这方面非常类似,所以请查看它是如何实现的


服务器端IMAP实现与客户端的不同之处在于,它大部分时间响应命令,而不是启动命令,所以请查看。

看看,或者IMAP并不是那么简单:命令可以交织在一起,根据标记,对多个命令的响应是混合的,服务器可以随时发送未标记的消息,提供状态更新。您需要在新服务器中支持这一点,以处理诸如
IDLE
命令之类的事情。将IMAP视为像SMTP一样的锁步协议会导致灾难。你需要一个完整的状态机来代替。@PhilP,应该OP会RTFM,不是吗?问题是关于解析器的,我为他们提供了关于如何解析IMAP procotol命令的具体示例。不,因为SMTP是基于行的,而IMAP命令包括同步和非同步文本,所以在该级别上甚至不相同。唯一的相似之处来自“使用bufio”;之后的一切都不同了。