小编eug*_*832的帖子

Gmail API解码Javascript中的邮件

我在解码使用Gmail API收到的电子邮件的邮件正文时遇到严重问题.我想抓取消息内容并将内容放在div中.我正在使用base64解码器,我知道它不会解码编码不同的电子邮件,但我不知道如何检查电子邮件以决定使用哪个解码器 - 说明它们是utf-8编码的电子邮件已成功解码base64解码器,但不是utf-8解码器.

我已经研究了几天的电子邮件解码,而且我已经了解到我在这里的联盟有点不合适.我之前没有做过很多关于电子邮件编码的工作.这是我用于获取电子邮件的代码:

gapi.client.load('gmail', 'v1', function() {
var request = gapi.client.gmail.users.messages.list({
  labelIds: ['INBOX']
});
request.execute(function(resp) {
  document.getElementById('email-announcement').innerHTML = '<i>Hello! I am reading your <b>inbox</b> emails.</i><br><br>------<br>';
  var content = document.getElementById("message-list");
  if (resp.messages == null) {
    content.innerHTML = "<b>Your inbox is empty.</b>";
  } else {
    var encodings = 0;
    content.innerHTML = "";
    angular.forEach(resp.messages, function(message) {
      var email = gapi.client.gmail.users.messages.get({
      'id': message.id
      });
      email.execute(function(stuff) {
        if (stuff.payload == null) {
          console.log("Payload null: " + message.id);
        }
        var header = "";
        var …
Run Code Online (Sandbox Code Playgroud)

javascript email decoding character-encoding gmail-api

8
推荐指数
2
解决办法
6695
查看次数

Gmail API - 使用Javascript解析邮件内容(Base64解码?)

我正在尝试使用Gmail API获取用户的电子邮件,抓取邮件主题和正文,然后将其显示在网页上.我会用它来做其他事情,但这是我遇到困难的部分.我正在使用Angular.js.

这是我的API调用:

function makeApiCall() {
  gapi.client.load('gmail', 'v1', function() {
    var request = gapi.client.gmail.users.messages.list({
      labelIds: ['INBOX']
    });
    request.execute(function(resp) {
      var content = document.getElementById("message-list");
      angular.forEach(resp, function(message) {
        var email = gapi.client.gmail.users.messages.get({'id': message.id});
        // var raw = email.payload.parts;
        // console.log(raw);
        content.innerHTML += JSON.stringify(email) + "<br>";
      })
    });
  });
}
Run Code Online (Sandbox Code Playgroud)

因此gapi.client.gmail.users.messages.list返回我的消息数组及其ID号.那很有效.

要求gapi.client.gmail.users.messages.get({<specific message ID>})输出这个 - {"B":{"method":"gmail.users.messages.get","rpcParams":{},"transport":{"name":"googleapis"}}}.

不确定是什么,但尝试获取消息payload(email.payload.parts),结果undefined.那么,我该如何获取消息内容?

此外,我会假设如果我可以获取消息内容,那么我将不得不对内容进行Base64解码以获得一些英语.对此有任何建议也会有很大帮助.我发现了这个:https://github.com/kvz/phpjs,但是因为我不知道如何获取消息内容以便我可以尝试解码它们,所以不确定是否有php.js在这方面是有帮助的.

javascript base64 angularjs gmail-api

7
推荐指数
2
解决办法
2万
查看次数