【问题标题】:Parsing IMAP + mailparser return object into a JSON将 IMAP + mailparser 返回对象解析为 JSON
【发布时间】:2018-07-14 07:50:05
【问题描述】:

我为此使用节点的 IMAP 和 Mailparser 模块。

我的邮箱阅读器函数具有解析标题的这一行:

var parsed_header = inspect(Imap.parseHeader(buffer));

这将返回:

{ from: [ 'user <user@mail.com>' ],
subject: [ 'Test' ] }

我希望能够使用 JSON.parse 将其解析为 JSON,但由于键周围没有引号 + 键都在列表中,可以这样做吗?

【问题讨论】:

    标签: json node.js imap email-parsing


    【解决方案1】:

    只要做var parsed_header = Imap.parseHeader(buffer),你就会有一个对象。因此,要获取“来自”字段,您只需使用 parsed_header.from

    【讨论】:

      【解决方案2】:

      我用两个正则表达式替换解决了同样的问题:

      var header = inspect(Imap.parseHeader(buffer)).replace(/'/g,'"').replace(/([a-z]+)(: ?[\[\n])/g, '"$1"$2');
      var headerObj = JSON.parse(header);
      

      第一个用双引号替换单引号,第二个在字段名称周围添加引号。

      【讨论】:

        猜你喜欢
        • 2015-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-02
        相关资源
        最近更新 更多