- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
什么是 Java 类似物:
thufir@dur:~$
thufir@dur:~$
thufir@dur:~$ telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user thufir
+OK
pass password
+OK Logged in.
stat
+OK 16 84695
retr 1
+OK 4978 octets
Return-Path: <thufir@dur.bounceme.net>
X-Original-To: thufir@dur
Delivered-To: thufir@dur
Received: from dur.bounceme.net (localhost [127.0.0.1])
(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
(No client certificate requested)
by dur.bounceme.net (Postfix) with ESMTPS id E6A58180508
for <thufir@dur>; Sun, 26 Aug 2012 06:48:47 -0700 (PDT)
Message-Id: <1027505969.1345988926766.JavaMail.thufir@dur.bounceme.net>
To: thufir@dur
Subject: Google Developers Expert: recognizing and rewarding top developers
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_Part_0_2465937.1345988926695"
Date: Sun, 26 Aug 2012 06:48:47 -0700 (PDT)
From: thufir@dur.bounceme.net
------=_Part_0_2465937.1345988926695
Content-Type: text/html
Content-Transfer-Encoding: 7bit
<img height="80" src="http://2.bp.blogspot.com/-vC8YT1LrWbw/UAW2oUAlvXI/AAAAAAAABt8/Xp5ZDiHi6JQ/s1600/
...
------=_Part_0_2465937.1345988926695--
.
quit
+OK Logging out.
Connection closed by foreign host.
thufir@dur:~$
我得到:
init:
Deleting: /home/thufir/NetBeansProjects/leafnode_postfix/build/built-jar.properties
deps-jar:
Updating property file: /home/thufir/NetBeansProjects/leafnode_postfix/build/built-jar.properties
Compiling 1 source file to /home/thufir/NetBeansProjects/leafnode_postfix/build/classes
compile:
run:
DEBUG: nntp: newsrc loading /home/thufir/.newsrc
DEBUG: nntp: newsrc load: 1 groups in 27ms
Show INBOX for thufir@localhost
Exception in thread "main" javax.mail.NoSuchProviderException: Invalid protocol: null
at javax.mail.Session.getProvider(Session.java:468)
at javax.mail.Session.getStore(Session.java:546)
at javax.mail.Session.getStore(Session.java:531)
at javax.mail.Session.getStore(Session.java:520)
at net.bounceme.dur.leafnode_postfix.MailClient.checkInbox(Unknown Source)
at net.bounceme.dur.leafnode_postfix.Main.readMail(Unknown Source)
at net.bounceme.dur.leafnode_postfix.Main.<init>(Unknown Source)
at net.bounceme.dur.leafnode_postfix.Main.main(Unknown Source)
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)
大概问题是我没有正确登录到 dovecot POP3 服务器?如何传递登录凭据?
package net.bounceme.dur.leafnode_postfix;
import java.io.IOException;
import static java.lang.System.out;
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class MailClient extends Authenticator {
public static final int SHOW_MESSAGES = 1;
public static final int CLEAR_MESSAGES = 2;
public static final int SHOW_AND_CLEAR =
SHOW_MESSAGES + CLEAR_MESSAGES;
protected String from;
protected Session session;
protected PasswordAuthentication authentication;
public MailClient(UserHost userHost) {
String user = userHost.getUser();
String host = userHost.getHost();
boolean debug = userHost.isDebug();
from = user + '@' + host;
authentication = new PasswordAuthentication(user, user);
Properties props = new Properties();
props.put("mail.user", user);
props.put("mail.host", host);
props.put("mail.debug", debug ? "true" : "false");
props.put("mail.store.protocol", "pop3");
props.put("mail.transport.protocol", "smtp");
session = Session.getDefaultInstance(props);
}
@Override
public PasswordAuthentication getPasswordAuthentication() {
return authentication;
}
public void sendMessage(Message post) throws MessagingException, IOException {
Message message = new MimeMessage(session);
InternetAddress address = new InternetAddress("thufir@dur");
message.setRecipient(Message.RecipientType.TO, address);
message.setSubject(post.getSubject());
Multipart mp = new MimeMultipart();
BodyPart part = new MimeBodyPart();
part.setContent(post.getContent(), "text/html");
mp.addBodyPart(part);
message.setContent(mp);
Transport.send(message);
}
public void checkInbox(int mode)
throws MessagingException, IOException {
if (mode == 0) {
return;
}
boolean show = (mode & SHOW_MESSAGES) > 0;
boolean clear = (mode & CLEAR_MESSAGES) > 0;
String action =
(show ? "Show" : "")
+ (show && clear ? " and " : "")
+ (clear ? "Clear" : "");
out.println(action + " INBOX for " + from);
Store store = session.getStore();
store.connect();
out.println(store.getDefaultFolder());
Folder root = store.getDefaultFolder();
Folder inbox = root.getFolder("inbox");
inbox.open(Folder.READ_WRITE);
Message[] msgs = inbox.getMessages();
if (msgs.length == 0 && show) {
System.out.println("No messages in inbox");
}
for (int i = 0; i < msgs.length; i++) {
MimeMessage msg = (MimeMessage) msgs[i];
if (show) {
System.out.println(" From: " + msg.getFrom()[0]);
System.out.println(" Subject: " + msg.getSubject());
System.out.println(" Content: " + msg.getContent());
}
if (clear) {
msg.setFlag(Flags.Flag.DELETED, true);
}
}
inbox.close(true);
store.close();
System.out.println();
}
}
顺便说一句,向本地主机或 dur 发送消息工作正常。完整FQDN是 dur.bounceme.net,尽管在许多情况下 dur 似乎就足够了。我只是在一个盒子上做所有事情,没有在插管上做任何事情。
最佳答案
首先,您发送的电子邮件似乎无效。你有 thufir@dur
,你的意思是不是类似于 thufir@dur.com
?
其次,您需要向 Session 传递适当的信息。您需要进行以下更改:
authentication = new PasswordAuthentication(user, *pass*);//You must hand it username and pass, not two usernames like before
Properties props = new Properties();
props.put("mail.user", user);
props.put("mail.host", host);
props.put("mail.debug", debug ? "true" : "false");
props.put("mail.store.protocol", pop3Provider);//an example provider is pop.gmail.com, or I think aol is pop.aol.com, many follow that pattern, this is used for reading inbox/incoming messages (hence the store)
props.put("mail.transport.protocol", smtpProvider);//follows same as above, but smtp not pop, this is used for outgoing messages (hence the transport)
session = Session.getDefaultInstance(props);
我认为这是你的主要问题,告诉我它是如何工作的
关于java - 使用 javax.mail 读取本地 POP3 收件箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12131166/
我正在做一个项目,具体来说是一个网站,其中有一个收件箱或消息,用户可以在其中向其他用户发送消息。 我正在网上查看如何为此创建数据模型,你能帮我解决这个问题吗?我一开始所做的是将他们尝试输入的每条文本或
我目前正在尝试使用 Perl 连接到 gmail 收件箱和 Net::IMAP::Client 使用以下代码 use strict; use warnings; use Net::IMAP::Clie
我想制作一个桌面应用程序,它可以从通过 USB 数据线连接到 PC 的安卓手机读取短信。有没有可能我在网上搜索过任何入门点,有关于通过 android 应用程序阅读短信的教程...有人可以指导我正确的
我有一个用于删除邮件的收件箱代码。 如果我选择一条消息,它将删除所有消息。 我该如何解决这个问题? 这是我的delete_message.php代码: 这是 inbox.php 中带有复选框的代码
这个问题在这里已经有了答案: How to send email in Android ? [duplicate] (3 个答案) 关闭 8 年前。 如何在我们的应用中打开收件箱。 final St
今天我看到了收件箱应用程序。 (来源:cbsistatic.com) 我想知道如何在工具栏(searchButton 的左侧)上制作那个切换按钮。我没有找到对(或者我搜索不多)的引用。 谢谢^^ 最佳
我想使用 Google.GData.Client.dll 阅读我的 Gmail 收件箱。我该如何做到这一点?我想要一个示例程序。 最佳答案 我找到了 GMailAtomFeed // Creat
我有代码可以搜索用户的 Outlook 并根据您在工作表单元格中输入的主题短语回复电子邮件。几天前我确实让它工作了,但现在我似乎无法让它工作(已被删除)。运行后,将持续显示代码行“Set olitem
我正在尝试连接到本地托管的电子邮件 POP3 收件箱并在邮箱中显示电子邮件,但我不断收到错误: Exception in thread "main" javax.mail.MessagingExcep
我想使用 java (SE) 在 MS Outlook (2010) 中阅读我的收件箱,然后将消息/电子邮件移动到另一个文件夹。我曾尝试在网络上搜索,但只找到了许可的解决方案或几年前的帖子。有人对此步
这个问题在这里已经有了答案: launch sms application with an intent (22 个答案) 关闭 7 年前。 我想在我的应用程序中点击一个按钮来打开 Android
我正在运行 Xubuntu 13.04 并安装了最新版本的 libcurl/curl: $ curl -V curl 7.29.0 (i686-pc-linux-gnu) libcurl/7.29.0
我正在做一个项目,用户将首先保存他的 gmail id 和密码,确认后,我将提供一个链接,下次无需输入他的 gmail id 和密码,直接登录 gmail.. 保存的密码将作为参数传递使用 CURL
如何使用 ASP.NET 3.5 和 C# 向 facebook 用户收件箱发送消息?我可以使用 fbAPI.Stream.Publish() 在墙上发布消息,但我需要将消息发送到收件箱,并且必须是个
我正在尝试通过 google 找到的这段代码,但它没有连接到我的 gmail 收件箱。为什么? 我收到此错误消息: --------------processing mails started---
我想将通过 C2DM 收到的消息发送到手机的 SMS 收件箱,并得出结论,这可能是通过让 Android 认为 C2DM 是真正的 SMS 并让它发挥其魔力来实现的。 我已经追踪了相当多的 Andro
我正在尝试从 Gmail 地址(或主题)获取特定电子邮件。我使用 selenium 是因为这个 gmail 帐户无法使用 imaplib。我卡在这里: driver.find_element_by_i
我使用修改自以下代码的一些代码成功连接并阅读我的 Outlook 收件箱:Reading e-mails from Outlook with Python through MAPI 。我想做的是在我的
我从这里得到了一个代码来下载 gmail 收件箱: http://davidwalsh.name/gmail-php-imap use these 2 hostnames $hostname = '{
我需要在 TableView 中显示其他参与者的姓名和图像,就像 Facebook 收件箱一样。我正在使用此 fql 查询来获取收件人。 - (void)readInbox { NSStrin
我是一名优秀的程序员,十分优秀!