2017-03-03 78 views
0

我试图使用GoogleAPIClientForRESTGTMOAuth2库在Swift中发送Gmail邮件,但我收到上述错误。Swift Gmail API:尝试发送邮件给出错误-1001

这里是我的代码:

let message = GTLRGmail_Message() 
    message.raw = "test" 
    let query = GTLRGmailQuery_UsersMessagesSend.query(withObject: message, userId: "[email protected]", uploadParameters: nil) 
    let gmailService = GTLRGmailService() 
    let auth = GTMOAuth2Authentication() 
    auth.clientID = gmailClientID 
    gmailService.authorizer = auth 
    gmailService.executeQuery(query) { ticket, object, error in 
     print(ticket) 
     print(object) 
     print(error) 
    } 

和这里的错误:

Optional(Error Domain=com.google.GTMOAuth2 Code=-1001 "(null)" UserInfo={request=<NSMutableURLRequest: 0x600000016ed0> { URL: https://www.googleapis.com/gmail/v1/users/example%40gmail.com/messages/send?prettyPrint=false }}) 

注:

+0

您在调用url时可能有错误,请检查其发送参数。 – vaibhav

+0

http://stackoverflow.com/q/19095861/665689指这 –

+0

@vaibhav为什么我的调用网址会出现错误?我没有自己操纵任何网址,只使用了sdk。 – rigdonmr

回答

0

的所有基本步骤确保您已经按照此tutorial集成GTMOAuth2妥善到您的应用程序。请确保将平台注册为Other而不是iOS,否则验证时您会收到“invalid_client”错误。

您也可以检查此thread上的给定解决方案。

+0

试过这个教程,然后尝试克隆回购并使用它。两者都没有工作。我见过你发布的其他问题。基本上说同样的事情。该解决方案不适合我。 – rigdonmr

+0

通过使用'other'而不是'iOS',你必须包含你的密钥,不是很安全...... – Nico