如何在迅速使用Gmail API发送电子邮件 [英] How send Email using Gmail api in swift

查看:1537
本文介绍了如何在迅速使用Gmail API发送电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

借助的Gmail阿比对如何做到这一点没有明确的文件,我一直在努力与这个但也有很多事情是在空气中。

The Gmail Api has no clear documentation on how to do this, I have been trying with this but there are many things that are in the air.

我寻求外部资源等。 <一href=\"http://stackoverflow.com/questions/30824036/how-to-insert-a-mail-using-the-latest-gmail-api-in-swift\">Source 1 和<一个href=\"http://stackoverflow.com/questions/26881735/drafts-create-in-objective-c-using-gtlquerygmail\">Source 2 。第一,似乎使用API​​的潜力,使用功能 queryForUsersMessagesSendWithUploadParameters

I have sought external sources such. Source 1 and Source 2. The first seems to use the potential of the api, using the function queryForUsersMessagesSendWithUploadParameters.

虽然第二是关于一个多一点。虽然这在Objective-C是没有问题的,除了GTMMIMEDocument对象,不知道在哪里,或者如果它获得或库。

While the second is about a little more. Although this in Objective-C is not a problem, except for the GTMMIMEDocument object, which do not know where or if it is obtained or a library.

我的问题是,如果有人有几分清洁剂和/或code更容易理解,或者其中一个更好的指导,以发送电子邮件

My question is if someone has a somewhat cleaner and / or code easier to understand, or a better guide in which to send an email

推荐答案

我找到了解决办法。

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))
    }

这篇关于如何在迅速使用Gmail API发送电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆