"授权要求"即使我指定了授权

时间:2018-01-23 22:57:50

标签: node.js http sendgrid node-request sendgrid-api-v3

在以下代码中,我为API指定了OAey2的承载授权。但我一直在401 - authorization required。我不知道为什么auth不起作用,我在swagger,paw上尝试过但是一切都运行但在节点方面却没有。

let mailOpt = {
      uri: "https://api.sendgrid.com/v3/contactdb/recipients",
      method: "POST",
      header: {
        "Authorization": `Bearer ${account.SENDGRID_ACCESS_TOKEN}`
      },
      body: "[\n" +
            "  {\n" +
            `    \"email\": \"${response[0].email}\"\n` +
            "  }\n" +
            "]"
}

当我打印出实际的 mailOpt 时,我得到了以下内容。一切都很好。

MAILopt { uri: 'https://api.sendgrid.com/v3/contactdb/recipients',
  method: 'POST',
  header: 
   { Authorization: 'Bearer access_token' },
  body: '[\n  {\n    "email": "voqes@inboxbear.com"\n  }\n]' }

1 个答案:

答案 0 :(得分:0)

在您的选项中,您拥有属性header,但它应该是headers,这就是"Authorization"部分被忽略的原因。

此外,不确定uri是否为有效的属性,但url确定是。