我尝试使用新的 Gmail api 从特定的电子邮件消息部分下载图像附件。(https://developers.google.com/gmail/api/v1/reference/users/messages/attachments#resource)。
消息部分是:
{u'mimeType': u'image/png', u'headers': {u'Content-Transfer-Encoding': [u'base64'], u'Content-Type': [u'image/png; name="Screen Shot 2014-03-11 at 11.52.53 PM.png"'], u'Content-Disposition': [u'attachment; filename="Screen Shot 2014-03-11 at 11.52.53 PM.png"'], u'X-Attachment-Id': [u'f_hso95l860']}, u'body': {u'attachmentId': u '', u'size': 266378}, u'partId': u'1', u'filename': u'Screen Shot 2014-03-11 at 11.52.53 PM.png'}
Users.messages.attachments 的 GET 响应是:
{“数据”:“”,“大小”:194659 }
当我在 Python 中解码数据时,如下所示:
decoded_data1 = base64.b64decode(resp["data"])
decoded_data2 = email.utils._bdecode(resp["data"]) # email, the standard module
with open("image1.png", "w") as f:
f.write(decoded_data1)
with open("image2.png", "w") as f:
f.write(decoded_data2)
Run Code Online (Sandbox Code Playgroud)
文件 image1.png 和 …
我需要在 C# 中使用 Gmail Api 发送带附件的电子邮件的帮助。
我已经阅读了关于发送带有附件的电子邮件的 Google 网站,但示例是在 Java 中。
Gmail 文档说我需要create a MIME email messages compliant with RFC 2822. - https://developers.google.com/gmail/api/guides/sending
鉴于我只有一个“收件人”地址、主题和纯文本正文 - 是使用 SwiftMailer(或替代包)实现这一目标的最简单方法吗?
如果是这样,我如何确保 SwiftMailer 的输出适合 Gmail REST API?
我将使用此函数对它进行 Base64URL 编码:
function base64url_encode($data) {
return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}
Run Code Online (Sandbox Code Playgroud) 我正在编写一个Chrome扩展程序,该扩展程序可以使用Gmail API从Gmail Web App发送语音邮件。
在尝试对用户进行身份验证时,我总是在某处收到此红色消息。
我的问题:
gapi变量的方式吗?PS。我已经尝试阅读文档。此外,该扩展程序工作正常,Gmail工作正常,红色消息是唯一的问题。
我试图通过 gmail-api 开发人员指南弄清楚它。gmail-api 中的消息部分不包含有关发件人的任何详细信息,感谢任何帮助。
我目前正在使用 gmail 查询“GTLGmail”是否有任何方式或查询来安排邮件。
我已经浏览了https://developers.google.com/gmail/api/guides,但我找不到任何解决方案。
提前致谢。
以下 javascript 代码通过 Gmail API 成功发送电子邮件。然而,表格格式,特别是表格和列(单元格)宽度设置,似乎被忽略了。
function sendMail(email) {
var to = email;
var subject = "HTML formatted email";
var content = "";
content += "<html><body>";
content += "<table width='100%'><tr><td>"; // Outer table
content += "<table width='60%'>"; // Nested table
content += "<tr><td width='70%'>This is a row</td><td width='30%'>999999</td></tr>";
content += "<tr><td width='70%'>So is this</td><td width='30%'>9999</td></tr>";
content += "</table>";
content += "</td></tr></table>";
content += "</body></html>";
var email =
"From: 'me'\r\n" +
"To: " + to + "\r\n" +
"Subject: " + …Run Code Online (Sandbox Code Playgroud) 我想列出带有特定标签的消息。所以我使用了谷歌的Go Quickstart 代码并将范围设置为 gmail.MailGoogleComScope。
使用此代码获取带有标签“INBOX”的所有邮件列表可以正常工作
mes, err := srv.Users.Messages.List(user).LabelIds("INBOX").Do()
Run Code Online (Sandbox Code Playgroud)
但是当我用“测试”替换“收件箱”时,出现错误:
无法检索消息。googleapi:错误 400:无效标签:TEST,invalidArgument 退出状态 1
并且有一个名为 TEST 的标签。我究竟做错了什么?
我正在尝试使用 Gmail API 阅读电子邮件正文
我使用的是 IMAP,但出于性能原因(在 IMAP 中阅读电子邮件需要花费大量时间),我必须转向速度相当快的 Gmail API。
问题是我试图解码 Body,IMAP 很简单,只需从 imap_fetchstructure 返回读取传输编码并使用适当的函数进行解码。(imap_qprint、imap_7bit 等)
对于 Gmail
$message = $service->users_messages->get($user, $msg->id, ["format"=>"full"]);
$payload = $message->getPayload();
$mime = $payload->getMimeType();
$body = $payload->getBody();
$headers = $payload->getHeaders();
$content = $body->getData();
$decoded = base64_decode($content);
Run Code Online (Sandbox Code Playgroud)
变量 $contents 是 base64 中的主体,但如果我解码包含奇怪的字符,如 ?????? IMAP 没有发生这种情况。内容是纯文本 UTF-8,没有额外的部分或附件,只是纯文本。它也发生在 HTML 中。
这些是相关标题
[{"name":"MIME-Version","value":"1.0"},
{"name":"Content-Type","value":"text\/plain; charset=utf-8"},
{"name":"Content-Transfer-Encoding","value":"quoted-printable"}]
Run Code Online (Sandbox Code Playgroud)
我认为问题在于正文是可引用打印的,但即使我在解码的 base64 上使用 imap_qprint 或 Quoted_printable_decode 这些奇怪的字符也会继续。
我正在学习制作gmail插件.但我仍然坚持如何访问使用插件的用户的电子邮件地址值.
阅读之后,我知道我将需要此权限 https://www.googleapis.com/auth/userinfo.email
但是,当用户在Gmail中打开插件时,如何实际获取电子邮件地址
请有人帮我解决这个问题
gmail-api ×10
gmail ×3
javascript ×2
php ×2
android ×1
email ×1
gmail-addons ×1
go ×1
google-api ×1
html ×1
ios ×1
objective-c ×1
python ×1
swiftmailer ×1