ios - 在 GMAIL 中解码电子邮件正文 (ios)

标签 ios google-api gmail-api

我在阅读来自 GMAIL 的电子邮件时遇到问题。

这是我收到每封电子邮件的方式:

- (void)displayResultMessageWithTicket:(GTLServiceTicket *)ticket
                    finishedWithObject:(GTLGmailMessage *)email
                                 error:(NSError *)error
{
    if (error == nil) {
        NSMutableString *labelString = [[NSMutableString alloc] init];

        GTLGmailMessagePart* payload=email.payload;
        NSLog(@"payload =%@",payload);

        for(GTLGmailMessagePart* part in payload.parts)
        {
            GTLGmailMessagePartBody* body = part.body;
            NSLog(@"body =%@",body);
            NSLog(@"data =%@",body.data);
        }
        self.output.text = labelString;
    }
    else
    {
        [self showAlert:@"Error" message:error.localizedDescription];
    }
}

我认为 body 是用 base64 之类的东西编码的,但我不确定。

这是我得到的例子:

Q3J1bmNoIERhaWx5DQoNClRvZGF5J3MgVG9wIFN0b3JpZXMgLy8gSnVsIDYsIDIwMTUgUmVhZCBtb3JlIGF0IHRlY2hjcnVuY2guY29tIDwjPiBJZiB5b3UgZG8gbm90IHdhbnQgdG8gcmVjZWl2ZSB0aGlzLCB5b3UgY2FuIHVuc3Vic2NyaWJlIHdpdGggb25lIGNsaWNrIGhlcmUgPGh0dHA6Ly9saW5rLnRlY2hjcnVuY2guY29tLzU0ZWQ3ZDc2ZmExM2ExYWQyMjhiNTA2ZjJzcGJnLmc4aS9VQnJ0TnFndnVHMEFyVWxLQjA5YWQ-Lg0KDQpUZWNoQ3J1bmNoIDQxMCBUb3duc2VuZCBTdHJlZXQsIFNhbiBGcmFuY2lzY28sIENBIDk0MTA3DQoNCsKpIDIwMTIgQU9MIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gUHJpdmFjeSBQb2xpY3kgPGh0dHA6Ly9saW5rLnRlY2hjcnVuY2guY29tLzU0ZWQ3ZDc2ZmExM2ExYWQyMjhiNTA2ZjJzcGJnLmc4aS9VQnJ0TnFndnVHMEFyVWxLQ2NiNWE-IFRlcm1zIG9mIFNlcnZpY2UgPGh0dHA6Ly9saW5rLnRlY2hjcnVuY2guY29tLzU0ZWQ3ZDc2ZmExM2ExYWQyMjhiNTA2ZjJzcGJnLmc4aS9VQnJ0TnFndnVHMEFyVWxLRDRkZjU-DQoNCklmIHlvdSBiZWxpZXZlIHRoaXMgaGFzIGJlZW4gc2VudCB0byB5b3UgaW4gZXJyb3IsIHBsZWFzZSBzYWZlbHkgdW5zdWJzY3JpYmUgPGh0dHA6Ly9saW5rLnRlY2hjcnVuY2guY29tL29jLzU0ZWQ3ZDc2ZmExM2ExYWQyMjhiNTA2ZjJzcGJnLmc4aS84YzIyN2ZiNz4u

如何解码?

最佳答案

消息正文是 base64url 编码的。您需要解码,在 base64 解码之前,将编码字符串中的“_”替换为“/”,将“-”替换为“+”。

关于ios - 在 GMAIL 中解码电子邮件正文 (ios),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31272911/

相关文章:

ios - 如何将 View 发送到后台,使其位于主视图后面?

ios - 更改选项卡栏外观

php - 如何知道访问 token 是否在 Google Api PHP 中过期

python - 如何用 PyDrive 替换/更新 Google Drive 上的文件?

Flutter:从 Google 表格中读取数据

rest - 如何使用新的 Gmail REST API 成功发送邮件?

android - 如何测试我的移动应用程序的 Facebook 登录

iphone - iOS:在 NIB 之间自动旋转

java - Gmail API 的 Java 集成问题

google-apps-script - 一次在 Gmail 线程中搜索多个未读标签的脚本