英文:
nextjs/emailjs can't find path for image attachment
问题
我正在使用NextJS和emailJS(npm包,不要与emailjs.com服务混淆)来发送带有图像附件的电子邮件。我似乎无法弄清楚为什么,但每当我尝试在发送电子邮件时附加文件时,我会收到错误消息:
错误:image.jpeg不存在
我在/public/image.jpeg中有一个文件image.jpeg,我尝试了以下组合:
/image.jpeg
/public/image.jpeg
../../public/image.jpg(从emailjs文件的相对路径)
localhost:3000/image.jpeg
还尝试了从互联网上提取的图像,只需:www.url.com/images/image.jpeg
这些都似乎不起作用
我是这样构建我的消息的:
const message = { ...
attachment: [ {data: ..., alternative: true},
{ path: '/image.jpeg', type: 'image/jpeg', name: 'image.jpeg' }, ],
};
我在这里缺少什么?谢谢。
英文:
I'm using NextJS and emailJS (npm package, not to be confused with emailjs.com service) to send email with image attachment. I can't seem to figure out why, but whenever I try to attach a file while sending email, I get the error:
Error: image.jpeg does not exist
I have a file image.jpeg in /public/image.jpeg, I've tried these combinations:
/image.jpeg
/public/image.jpeg
../../public/image.jpg (relative path from emailjs file)
localhost:3000/image.jpeg
Also tried to pull one off of internet, just: www.url.com/images/image.jpeg
None of these seem to work
I'm constructing my message this way:
const message = { ...
attachment: [ {data: ..., alternative: true},
{ path: '/image.jpeg', type: 'image/jpeg', name: 'image.jpeg' }, ],
};
What am I missing here? Thanks.
答案1
得分: 0
path: '/public/image.jpeg';
这应该允许您将文件附加到电子邮件消息中。
英文:
Since the file is located in the /public directory, you should use the following value for the path property:
path: '/public/image.jpeg'
This should allow you to attach the file to your email message.
答案2
得分: 0
以下是翻译好的部分:
"我想说的一个重要事情是,我正在在nextJS的/api文件夹中使用这个,我想这个处理路径的方式可能会有点不同。
需要导入"path"并使用这个:
const publicDirectory = path.join(process.cwd(), 'public');
来获取公共文件夹的实际路径。"
英文:
One major thing I've missed to say was that I'm using this in nextJS /api folder which I suppose handles paths a little different.
Answer:
Need to import "path" and use this:
const publicDirectory = path.join(process.cwd(), 'public');
to get the actual path of public folder.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论