使用 Mailgun 以内联附件发送字节切片
Send byte slice in inline attachment with Mailgun
我正在使用Mailgun package for Go and would like to send an inline image using cid. In my html template for mailgun I have the correct cid:qr-code.png
set up. However I have to add an inline attachment to my email with the qr code. I use the this方法生成二维码:
code, err := qrcode.Encode(data, qrcode.Medium, 256) // code is a []byte
现在我需要将此代码作为内联附件添加到我的电子邮件中,并将 cid 属性 设置为 qr-code.png
message.AddBufferAttachment("qr-code.png", code)
正确附加了图像,但没有内联它,因为我无法设置 cid
属性。
现在我知道这是 possible 与 mailgun 因为以下 .js 代码可以使用 mailgun 完成它。
mg.Attachment({
data: base64Buffer,
filename: "qr-code.png",
cid: "cid:qr-code.png",
}),
我似乎无法使用 go Mailgun 包来完成它。 注意:我无法将图像写入文件并在 os 上然后附加它。
您可以使用AddReaderInline
函数
message.AddReaderInline(filename, readCloser)
由于您需要将 []bytes
转换为 io.ReadCloser
,您可以先转换为 io.Reader
,然后再转换为 io.ReadCloser
ioutil.NopCloser(bytes.NewReader(code))
我正在使用Mailgun package for Go and would like to send an inline image using cid. In my html template for mailgun I have the correct cid:qr-code.png
set up. However I have to add an inline attachment to my email with the qr code. I use the this方法生成二维码:
code, err := qrcode.Encode(data, qrcode.Medium, 256) // code is a []byte
现在我需要将此代码作为内联附件添加到我的电子邮件中,并将 cid 属性 设置为 qr-code.png
message.AddBufferAttachment("qr-code.png", code)
正确附加了图像,但没有内联它,因为我无法设置 cid
属性。
现在我知道这是 possible 与 mailgun 因为以下 .js 代码可以使用 mailgun 完成它。
mg.Attachment({
data: base64Buffer,
filename: "qr-code.png",
cid: "cid:qr-code.png",
}),
我似乎无法使用 go Mailgun 包来完成它。 注意:我无法将图像写入文件并在 os 上然后附加它。
您可以使用AddReaderInline
函数
message.AddReaderInline(filename, readCloser)
由于您需要将 []bytes
转换为 io.ReadCloser
,您可以先转换为 io.Reader
,然后再转换为 io.ReadCloser
ioutil.NopCloser(bytes.NewReader(code))