javascript - 使用 inboxSDK 获取发件人电子邮件

标签 javascript gmail inboxsdk

我如何通过indboxSDK获取发件人电子邮件?我试过这个:

InboxSDK.load(2, 'sdk_marcin123_e44a6df9c6').then(sdk => {
sdk.Conversations.registerThreadViewHandler(threadView => {

var tytul=threadView.getSubject();
var contact=threadView.getContacts();

//var contact=sdk.User.getFromContact();

const el = document.createElement("div");
    el.innerHTML = '<a href=fire.php?email='+ contact +'>Szukaj klienta</a>';


    threadView.addSidebarContentPanel({
        title: 'Szukaj w EU',
        iconUrl: chrome.runtime.getURL('monkey.png'),
        el
    });
});
});

但我得到:

Error logged: TypeError: threadView.getContacts is not a function at sdk

如何从电子邮件打印并在 HTML 链接中显示?

最佳答案

您可以使用 MessageView 处理程序获取发件人信息,这相当简单:

sdk.Conversations.registerMessageViewHandler(function(messageView){
 var sender = messageView.getSender();
 // {emailAddress:'some@email.com', name: 'Some Name'}
});

但是,正如您所看到的,这超出了 ThreadView 的范围,因此我建议在两个范围之外都有一个变量,在 MessageView 中获取发送者信息,然后在 ThreadView 中使用它。

我在我开发的扩展中做了类似的事情,并使用 setInterval 来不断监视我想要使用的变量,在你的情况下它应该是这样的:

InboxSDK.load(2, 'sdk_marcin123_e44a6df9c6').then(sdk => {
  var sender;

  // Use MessageView to get the sender information
  sdk.Conversations.registerMessageViewHandler(messageView => {
    sender = messageView.getSender();
  });

  sdk.Conversations.registerThreadViewHandler(threadView => {

    var tytul=threadView.getSubject();
    var contact=threadView.getContacts();

    const el = document.createElement("div");

    setInterval(() => {
      if (sender){
        // Do something with the sender information
        el.innerHTML = '<a href=fire.php?email='+ contact +'>Szukaj klienta</a>';

        threadView.addSidebarContentPanel({
          title: 'Szukaj w EU',
          iconUrl: chrome.runtime.getURL('monkey.png'),
          el
        });
      }
    },1000);

  });
});

关于javascript - 使用 inboxSDK 获取发件人电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47874753/

相关文章:

javascript - 使用使用 inboxsdk 创建的自定义按钮发送邮件?

javascript - 两个第三方JavaScript库命名冲突

javascript - PHP 忽略开头的 202

javascript - 在 Angular 中更新服务变量时, watch 不会触发

javascript - 2011年为iOS/Android开发HTML5离线存储解决方案

python - Gmail SMTP 拒绝我的登录

asp.net - SMTP 服务器需要安全连接或客户端未通过身份验证

ssl - 如何在 Gmail 上实现 TLS(Gsuite 基本版)