如何使用Gmail API快速发送电子邮件

jose920405

Gmail的阿比对如何做到这一点,我一直在努力,没有清晰的文档,但有很多事情是在空气中。

我一直在寻找外部资源。源1源2第一种似乎是使用函数来利用api的潜力queryForUsersMessagesSendWithUploadParameters

而第二个大约更多。尽管在Objective-C中这不是问题,但GTMMIMEDocument对象除外,该对象不知道从何处或从何处获得它或一个库。

我的问题是,是否有人在某种程度上更简洁和/或更易于理解的代码,或者是发送电子邮件的更好指南?

jose920405

我找到了解决方案

class func sendEmail() {

        var gtlMessage = GTLGmailMessage()
        gtlMessage.raw = self.generateRawString()

        let appd = UIApplication.sharedApplication().delegate as! AppDelegate
        let query = GTLQueryGmail.queryForUsersMessagesSendWithUploadParameters(nil)
        query.message = gtlMessage

        appd.service.executeQuery(query, completionHandler: { (ticket, response, error) -> Void in
            println("ticket \(ticket)")
            println("response \(response)")
            println("error \(error)")
        })
    }

    class func generateRawString() -> String {

        var dateFormatter:NSDateFormatter = NSDateFormatter()
        dateFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss Z"; //RFC2822-Format
        var todayString:String = dateFormatter.stringFromDate(NSDate())

        var rawMessage = "" +
            "Date: \(todayString)\r\n" +
            "From: <mail>\r\n" +
            "To: username <mail>\r\n" +
            "Subject: Test send email\r\n\r\n" +
            "Test body"

        println("message \(rawMessage)")

        return GTLEncodeWebSafeBase64(rawMessage.dataUsingEncoding(NSUTF8StringEncoding))
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章