这只适用于本地主机设置。遵循本文档并在代理中设置以下内容(将电子邮件地址、用户名和密码替换为我的个人电子邮件):
<parameter name="transport.mail.Address">synapse.demo.1@gmail.com</parameter>
<parameter name="transport.mail.Protocol">pop3</parameter>
<parameter name="transport.PollInterval">1</parameter>
<parameter name="mail.pop3.host">pop.gmail.com</parameter>
<parameter name="mail.pop3.port">995</parameter>
<parameter name="mail.pop3.user">synapse.demo.1</parameter>
<parameter name="mail.pop3.password">mailpassword1</parameter>
<parameter name="mail.pop3.socketFactory.class">javax.net.ssl.SSLSocketFactory</parameter>
<parameter name="mail.pop3.socketFactory.fallback">false</parameter>
<parameter name="mail.pop3.socketFactory.port">995</parameter>
<parameter name="transport.mail.ContentType">text/plain</parameter>
在我的本地主机上启动代理服务后,当我向我的个人电子邮件发送电子邮件时,没有任何东西被拾取。不确定我还需要做什么吗?
复制并尝试了这个旧答案中给出的代理服务,但仍然不起作用。
下面有几个指针
首先,您需要启用axis2.xml
中的mailto
传输接收器来接收电子邮件。
<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.MailTransportListener">
<!-- configure any optional POP3/IMAP properties
check com.sun.mail.pop3 and com.sun.mail.imap package documentation for more details-->
</transportReceiver>
此外,与Gmail
POP3服务器,你不能再使用您的电子邮件密码进行身份验证。这是因为2022年5月30日Less Secure
被谷歌删除应用程序选项。所以你需要生成一个应用程序密码,而不是使用你的密码。你可以参考这个来生成一个App密码。确保您的帐户启用了双因素身份验证,否则此选项将被禁用。完成以上操作后,代理就可以工作了。
<?xml version="1.0" encoding="UTF-8"?><proxy xmlns="http://ws.apache.org/ns/synapse" name="Email" startOnLoad="true">
<description/>
<target>
<inSequence>
<property name="senderAddress" expression="get-property('transport', 'From')" scope="default" type="STRING"/>
<log level="full">
<property name="Date" expression="$trp:Date"/>
<property name="Subject" expression="$trp:Subject"/>
<property name="Content-Type" expression="$trp:Content-Type"/>
<property name="From" expression="$trp:From"/>
</log>
<drop/>
</inSequence>
<outSequence>
<send/>
</outSequence>
</target>
<parameter name="mail.pop3.socketFactory.class">javax.net.ssl.SSLSocketFactory</parameter>
<parameter name="transport.PollInterval">5</parameter>
<parameter name="mail.pop3.host">pop.gmail.com</parameter>
<parameter name="mail.pop3.user">user1</parameter>
<parameter name="transport.mail.Protocol">pop3</parameter>
<parameter name="mail.pop3.socketFactory.port">995</parameter>
<parameter name="transport.mail.Address">user1@gmail.com</parameter>
<parameter name="mail.pop3.password">APP_PASSWORD</parameter>
<parameter name="mail.pop3.port">995</parameter>
<parameter name="mail.pop3.socketFactory.fallback">false</parameter>
<parameter name="transport.mail.ContentType">text/plain</parameter>
</proxy>
如果你仍然看到问题,你可以打开调试日志,看看发生了什么。将以下行添加到log4j.properties
log4j.logger.org.apache.axis2.transport.mail.MailTransportListener=DEBUG