java发邮件被360拦截_java mail, Spring Mail 发邮件 533 异常分析和解决

package com.haohui.mail;

import java.util.Properties;

import javax.mail.Address;

import javax.mail.Message;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

public class Demo1 {

public static void main(String[] args)throws Exception{

Properties props = new Properties();

props.setProperty("mail.smtp.auth", "true");

props.setProperty("mail.transport.protocol","smtp" );

Session session = Session.getInstance(props);

session.setDebug(true);

Message msg = new MimeMessage(session);

msg.setText("Hello World!!");

msg.setFrom(new InternetAddress("inhv_test@163.com"));

Transport transport = session.getTransport();

transport.connect("smtp.163.com", 25,"inhv@163.com" ,"xxx" );

transport.sendMessage(msg,new Address[]{new InternetAddress("inhv@163.com")});

transport.close();

}

}

异常如下:

RSET

Exception in thread "main" com.sun.mail.smtp.SMTPSendFailedException: 553 You are not authorized to send mail, authentication is required

at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1668)

at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1207)

at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:735)

at cn.itcast.javamail.Demo1.main(Demo1.java:27)

250 OK

com.sun.mail.smtp.SMTPSendFailedException: 553 You are not authorized to send mail, authentication is required

at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1668)

at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1207)

at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:735)

at cn.itcast.javamail.Demo1.main(Demo1.java:27)

原因分析如下:

我真实的发邮件地址是: inhv@163.com , 而我在  msg.setFrom(new InternetAddress("inhv_test@163.com")); 却设置成了另一个

而163是拒绝这样做的

而搜狐和sina却可以这样做

而没有异常

解决办法如下:

将邮件发送人的地址改成 inhv@163.com 即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值