因为对接微信outlook,发现暂时使用不了pop3,而原来的126邮箱可以。
import { ipcMain } from 'electron';
import Pop3Command from 'node-pop3';
import { simpleParser } from 'mailparser';
const config = {
host: 'pop.126.com',
user: 'jszonexxxxx@126.com',
password: 'SLRSHMNHxxxxxx',
};
console.log(config);
const pop3 = new Pop3Command(config);
// 注册模块中所有导出的方法到 ipcMain.handle 中
export function registerModuleMethods(module) {
try {
// 遍历模块中的每个导出方法
for (const methodName of Object.keys(module)) {
// 注册方法到 ipcMain.handle 中
console.log('methodName: ', methodName);
ipcMain.handle(methodName, async (event, ...args) => {
try {
// 调用对应的方法,并将结果返回给渲染进程
const result = await module[methodName](...args);
return result;
} catch (error) {
// 如果方法执行出错,将错误信息返回给渲染进程
throw new Error(
`Error executing method ${methodName}: ${error.message}`,
);
}
});
}
} catch (error) {
console.error(`Error registering module methods':`, error);
throw error;
}
}
export const registerPop3CMethods = () => {
ipcMain.handle('mailList', async (event, ...args) => {
const mailList = await pop3.UIDL();
console.log(mailList);
return mailList;
});
ipcMain.handle('mailItem', async (event, ...args) => {
const mailString = await pop3.RETR(1);
const mail = await simpleParser(mailString);
return mail;
});
};