我试图创建一个用户,然后通过sendgrid api将其添加到列表中,但是我一直收到错误消息,说Client.request不是一个函数,但显然是一个函数。
function createNewUser(list: number) {
return Client.request({
method: 'POST',
url: '/v3/contactdb/recipients',
body: JSON.stringify([
{
email: format.email,
first_name: format.name.split(' ')[0] || '',
last_name: format.name.split(' ')[1] || ''
}
])
})
.then(newUsers => {
const ids = (<any>newUsers).persisted_recipients;
return ids.forEach(async user => {
console.log(list, user);
Client.request({
method: 'POST',
url: `/v3/contactdb/lists/%7B${list}%7D/recipients/%7B${
user.id
}%7D`,
body: 'null'
})
.then(success => {
console.log(`${user.id} as been added to ${list}`);
return res.status(200).send('OK');
})
.catch(err => {
console.log(err);
return res.status(500).send(err);
});
});
})
.catch(err => res.status(500).send(err));
}
答案 0 :(得分:0)
即使我遇到了同样的问题,花了半个小时才知道,我犯了一个愚蠢的错误,也许这可以为您提供帮助。
您声明客户的方式非常重要,可能就像我赶时间一样,我在声明和要求变量时犯了一个愚蠢的错误。
const client = require('@sendgrid/mail');
应该是const client = require('@ sendgrid / client)