我尝试使用iCalender标准向用户发送日历活动。我希望他们的收件箱能够自动检测事件并将其显示给用户,如下图所示。
我的isc数据是
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:adamgibbons/ics
BEGIN:VEVENT
UID:a8b44b40-30fc-11e8-9cdf-ab421c95fe5f
SUMMARY:Test Event
DTSTAMP:20180326T125000Z
DTSTART:20180529
DTEND:20180530
DESCRIPTION:This is a test event
LOCATION:Somewhere in a building...
STATUS:CONFIRMED
ORGANIZER;CN=Admin:mailto:test@test.com
ATTENDEE;RSVP=TRUE;CN=test@test.com:mailto:test@test.com
END:VEVENT
END:VCALENDAR
我正在使用节点包' ics'制作ics数据和以下代码来发送电子邮件。
var encodedEvent = Base64.encode(event)
var msg = {
to: to,
from: from,
subject: 'Registration an Event',
text: 'Thanks for registering for an event.',
html: '<strong>Thanks for registering for an event.</strong>',
attachments: [{
content: encodedEvent,
filename: 'invite.ics',
type: 'text/calendar',
disposition: 'attachment',
contentId: 'mytext'
}],
headers: {
method: "REQUEST"
}
}
sgMail.setApiKey(apiKey)
sgMail.send(msg)
.then( (data) => { console.log("data", data) })
.catch( (err) => { console.log("Error:", err) })
现在SendGrid正在发送电子邮件,电子邮件中包含附件&#34; invite.ics&#34;但收件箱似乎无法检测到它。根据我的研究,它可能是标题的一个问题,但我不确定,我到目前为止尝试了一些事情,没有。
有什么想法吗?