我正在尝试发送一封带有附件的确认电子邮件,电子邮件地址为strapi provider email NodeEmailer。该插件显然支持附件,但我不知道我应该在strapi后端的何处添加这些附件。有人知道如何将附件添加到通过strapi NodeEmailer发送的电子邮件中吗?
最终解决方案相当复杂。也许有一种更简单的、没有文档记录的方法可以用Strapi实现这一点,但我不知道。
最后,我必须根据快速入门指南创建一个全新的应用编程接口,所以创建一个新的内容类型“注册”,并创建我自己的定制控制器和服务,使用strapi.plugins['email']
和strapi.plugins[用户权限]
。
Strapi会自动为您生成模型、文档和路线,但您必须编辑控制器和服务。
register/config/routes.json
{
"method": "POST",
"path": "/registers",
"handler": "Register.create",
"config": {
"policies": [],
"description": "Register a user"
}
},
register/controllers/register.js
module.exports = {
create: async ctx => {
try {
let addUser = await strapi.services.register.registerUser(
ctx.request.body
);
let sendEmail = await strapi.services.register.sendEmail(
ctx.request.body
);
ctx.send({
user: addUser,
email: sendEmail
});
} catch (err) {
console.log(err);
}
}
};
register/services/register.js(确保公用文件夹中有图像)
'use strict';
const path = require('path');
module.exports = {
registerUser: async data => {
let result = await strapi.plugins['users-permissions'].services.user.add({
username: data.username,
email: data.email,
password: data.password
});
return result;
},
sendEmail: async data => {
console.log(__dirname);
let result = await strapi.plugins['email'].services.email.send({
to: data.email,
from: 'whatever@whatever.com',
replyTo: 'whatever@whatever.com',
subject: 'Use strapi email provider successfully',
text: 'Hello world foo!',
html: 'Embedded image: <img src="cid:my_logo@nodemailer.com"/>',
attachments: [
{
filename: 'surmile_logo.PNG',
path: path.join(
__dirname + '/../../../public/uploads/my_logo.png'
),
cid: 'my_logo@nodemailer.com'
}
]
});
return result;
}
};
然后strapi build
和strapi start
发布到http://localhost:1337/registers 使用json正文
{
"username": "sausage",
"email": "blah@gmail.com",
"password": "123456"
}
确保您的客户端配置正确
我有一个关于Strapi电子邮件插件的问题。我想使用Nodemailer。当我用邮递员测试它时,我得到了错误500。我是否用错误的格式编写了PostScript JSON? 提前感谢! 本杰明
问题内容: 我正在使用sendgrid发送电子邮件,并且使用以下代码可以正常工作,但没有附件。 但是我需要发送附件,因此我搜索了github源和Web文档API,由于某种原因,没有javadocs,但是有一个示例GitHub sendgrid, 所以我一直在尝试直到它起作用为止,我缩小了一些异常和响应代码,起初我是被禁止的未经授权,最好是响应202,表示有效且已排队(在此处检查),这是我的代码发送
问题内容: 我想发送带有PDF附件的电子邮件。我创建了PDF文件,然后执行了以下操作,但我认为这是错误的: 在发送电子邮件之前,我可以看到附件,但是当我发送电子邮件时,它的发送没有附件,这是因为我没有正确附加文件。 问题答案: 您错了。使用代替。
问题内容: 有没有办法将图像附加到用PHP创建的html格式的电子邮件中? 我们需要确保在发送给可能在阅读电子邮件时无法访问Internet的客户的电子邮件上带有公司徽标(显然,他们可以下载文件)。 问题答案: 尝试使用PEARMail_Mime软件包,该软件包可以为您嵌入图像。 您需要使用addHTMLImage()方法并传递内容ID(cid),这是一个唯一的文本字符串,您还将在img的src属
在我之前的帖子中,我问了关于附件的电子邮件。这是我第一次做。简单地说,我不知道怎么做。我做了一些教程等,但它似乎不工作。 我有一个联系页面工作,我会写下以下信息。它正在工作,但我需要添加一个附件 这里是链接 http://jsfiddle.net/misaki03/e7mwn93u/ 我被告知使用PHPMailer,我如何在我的代码中添加它。这里提到的一个注释需要代码。但不确定我还应该添加什么,因
我试图发送一个附加的json文件到电子邮件,但是由于某种原因,在发送/创建电子邮件时,json文件没有被附加。注意:我不希望用户选择要附加的文件,我希望它被固定/自动设置。 我有以下权限在我的 还有密码 编辑1:在做了@piyushpk建议的建议更改后,我现在在选择电子邮件应用程序时会出现以下错误: 然而,根据我的打印声明,文件大小只有69KB。。。