使用 gmail api ios 回复邮件
Posted
技术标签:
【中文标题】使用 gmail api ios 回复邮件【英文标题】:Reply to a mail using gmail api ios 【发布时间】:2016-06-03 16:08:42 【问题描述】:我正在开发一个邮箱应用程序,我正在尝试回复邮件。
我已经浏览了文档。
GTLQueryGmail *query = [GTLQueryGmail queryForUsersMessagesSendWithUploadParameters:nil];
query.message = gtlGmailMessage; //parent message
[self.service executeQuery:query
delegate:self
didFinishSelector:@selector(displayResult:finishedWithObject:error:)];
我需要知道我需要在 gtlGmailMessage 中进行哪些更改才能回复父邮件。
提前致谢。
【问题讨论】:
我已经浏览了文档,但是您找不到如何回复电子邮件? 没有针对 ios 的 GTLGmailQuery 类的特定文档。如果你找到了请告诉我 所以我需要创建一个具有相同线程 ID 的新 GTLGmailMessage,其有效负载包含发送者 ID 和接收者 ID 以及新正文。 【参考方案1】:找到解决方案。
我们必须用原始字段做所有事情。
GTLQueryGmail *query = [GTLQueryGmail queryForUsersMessagesSendWithUploadParameters:nil];
NSString *strRaw = [NSString stringWithFormat:@"To:%@\nSubject:%@\nThreadId:%@\nReply-To:%@\n\n\n%@",strToBeRep,mail.subject,mail.threadId,strToBeRep,msgToBeSend];
NSData *messageBody = [strMessageBody dataUsingEncoding:NSUTF8StringEncoding];
GTLGmailMessage *message =[[GTLGmailMessage alloc]init];
query.userId = @"me";
NSString *base64Encoded = [messageBody base64EncodedStringWithOptions:0];
message.raw = base64Encoded;
message.snippet = @"sadfasdfasd dafvasdvas dafvasdv";
base64Encoded = [base64Encoded stringByReplacingOccurrencesOfString:@"/" withString:@"_"];
base64Encoded = [base64Encoded stringByReplacingOccurrencesOfString:@"+" withString:@"-"];
message.threadId = self.mail.mail.threadId;
query.message = message;
[self.service executeQuery:query
delegate:self
didFinishSelector:@selector(displayResultForNewMessage:finishedWithObject:error:)];
- (void)displayResultForNewMessage:(GTLServiceTicket *)ticket finishedWithObject:(GTLGmailMessage *)emailsResponse error:(NSError *)error
if(!error)
NSLog(@"Success");
【讨论】:
以上是关于使用 gmail api ios 回复邮件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Nodejs 中使用 gmail api 在同一对话中回复电子邮件