【问题标题】:What is the best way to fetch mails for a client app?为客户端应用程序获取邮件的最佳方式是什么?
【发布时间】:2017-06-08 08:45:40
【问题描述】:

我正在为 iOS 创建一个电子邮件客户端,在开始工作之前,我想为它选择最佳架构。

例如,在第一阶段,我想连接 Gmail。我搜索并发现 Google 有一个现成的库可以执行此操作,因此我可以连接该库并获取我的电子邮件。

另一种方法是从我的网络服务器中的 API 获取电子邮件,然后再从我的服务器中获取这些电子邮件。

主要目的不仅仅是获取电子邮件,还可以在以后添加一些新的过滤器或其他一些功能,也许是机器学习技术以实现更好的个性化等。

另外,我想支持多个电子邮件服务器(Gmail、Yahoo、Hotmail 等)

您建议我选择什么,从我自己的服务器或直接从电子邮件服务器获取?我也了解使用自己的服务器时的安全问题。

您的反馈对我有很大帮助!提前致谢!

【问题讨论】:

    标签: ios api email security server


    【解决方案1】:

    您不应使用自己的服务器来执行此任务。你只是不需要它。它不太安全,我敢肯定,您的一些客户会不喜欢这样一个事实,即您可以将他们的邮件存储在您自己的服务器上。

    如果您想支持多个电子邮件服务器提供商,那么您应该使用 IMAP 协议来接收邮件并使用 SMTP 来发送。此外,在某些情况下,您可以使用 OAuth2 作为身份验证方法,因此您无需要求用户在您的应用程序中输入他的凭据。

    我建议您使用一些开源库来处理 IMAP 和 SMTP,因为自行实现这些协议可能很复杂。

    【讨论】:

      【解决方案2】:

      听起来和我做的很相似。我最近在构建PickedMail,其中后端是重型 AI。对于 Google,您需要使用 Oauth2 并使用 server_token 传递到您的服务器。

      我为此创建了一个 iOS 框架,希望对您有所帮助。 https://github.com/Thywis/MultiAccountOauth

      对于 Outlook、yahoo、iCloud 等其他用户,我建议现在使用 IMAP。

      【讨论】:

        猜你喜欢
        • 2021-09-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-23
        • 2010-09-27
        • 1970-01-01
        • 1970-01-01
        • 2014-02-27
        相关资源
        最近更新 更多