Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javamail通过imap访问gmail(在代理之后)_Java_Proxy_Gmail_Imap_Jakarta Mail - Fatal编程技术网

使用Javamail通过imap访问gmail(在代理之后)

使用Javamail通过imap访问gmail(在代理之后),java,proxy,gmail,imap,jakarta-mail,Java,Proxy,Gmail,Imap,Jakarta Mail,我正在使用早期线程中的代码(也粘贴了下面的代码): 如果我在代理后面,如何使此代码工作 连接超时,我已尝试搜索解决方案,但无效 public static void main(String args[]) { Properties props = System.getProperties(); props.setProperty("mail.store.protocol", "imaps"); try { Session session

我正在使用早期线程中的代码(也粘贴了下面的代码):

如果我在代理后面,如何使此代码工作

连接超时,我已尝试搜索解决方案,但无效

public static void main(String args[]) {

    Properties props = System.getProperties();
    props.setProperty("mail.store.protocol", "imaps");
        try {
            Session session = Session.getDefaultInstance(props, null);
            Store store = session.getStore("imaps");
            store.connect("imap.gmail.com", email, password);
            System.out.println(store);

            Folder inbox = store.getFolder("Inbox");
            inbox.open(Folder.READ_ONLY);
            Message messages[] = inbox.getMessages();
            for(Message message:messages) {
            System.out.println(message);
        }
    } catch (NoSuchProviderException e) {
        e.printStackTrace();
        System.exit(1);
    } catch (MessagingException e) {
        e.printStackTrace();
        System.exit(2);
    }

}
谢谢,
Chris。

代理背后并不会阻止您连接到IMAP

可能有两个原因

  • IMAP端口被网络管理员阻止
  • 您的IP被Google阻止/禁止

  • 感谢代理后的不会阻止您连接到IMAP

    可能有两个原因

  • IMAP端口被网络管理员阻止
  • 您的IP被Google阻止/禁止
  • 谢谢

    Q:我如何配置JavaMail工作 通过我的代理服务器

    A:JavaMail 当前不支持访问 通过web代理的邮件服务器 服务器。其中一个主要原因是 使用代理服务器是为了允许HTTP 来自公司内部的请求 网络通过一个公司 防火墙。防火墙通常会 阻止大多数对Internet的访问,但 将允许来自代理的请求 要通过的服务器。此外, 公司内部的邮件服务器 网络将执行类似的操作 用于电子邮件、接受消息的功能 通过SMTP并将其转发给他们的 互联网上的最终目的地, 以及接受传入的消息和 将其发送到适当的 内部邮件服务器

    如果代理服务器支持 SOCKS V4或V5协议 (http://www.socks.nec.com/aboutsocks.html, RFC1928),并允许匿名 连接,你可以告诉Java 运行时指向所有TCP套接字 连接到SOCKS服务器。看见 网络属性指南 最新的文件 SocksProxy主机和SocksProxy端口 财产。这些是系统级的 属性,而不是JavaMail会话 财产。它们可以从 应用程序运行时的命令行 调用,例如:java -DsocksProxyHost=myproxy。。。。该设施可用于指导 SMTP、IMAP和POP3通信 从JavaMail到SOCKS代理 服务器。请注意,设置这些 属性将所有TCP套接字定向到 SOCKS代理,可能有 对其他方面的负面影响 你的申请

    如果没有这样的SOCKS服务器 希望使用JavaMail直接 访问外部的邮件服务器 防火墙,防火墙将需要 配置为允许此类访问。 JavaMail不支持访问 通过HTTP代理web服务器

    :

    Q:我如何配置JavaMail工作 通过我的代理服务器

    A:JavaMail 当前不支持访问 通过web代理的邮件服务器 服务器。其中一个主要原因是 使用代理服务器是为了允许HTTP 来自公司内部的请求 网络通过一个公司 防火墙。防火墙通常会 阻止大多数对Internet的访问,但 将允许来自代理的请求 要通过的服务器。此外, 公司内部的邮件服务器 网络将执行类似的操作 用于电子邮件、接受消息的功能 通过SMTP并将其转发给他们的 互联网上的最终目的地, 以及接受传入的消息和 将其发送到适当的 内部邮件服务器

    如果代理服务器支持 SOCKS V4或V5协议 (http://www.socks.nec.com/aboutsocks.html, RFC1928),并允许匿名 连接,你可以告诉Java 运行时指向所有TCP套接字 连接到SOCKS服务器。看见 网络属性指南 最新的文件 SocksProxy主机和SocksProxy端口 财产。这些是系统级的 属性,而不是JavaMail会话 财产。它们可以从 应用程序运行时的命令行 调用,例如:java -DsocksProxyHost=myproxy。。。。该设施可用于指导 SMTP、IMAP和POP3通信 从JavaMail到SOCKS代理 服务器。请注意,设置这些 属性将所有TCP套接字定向到 SOCKS代理,可能有 对其他方面的负面影响 你的申请

    如果没有这样的SOCKS服务器 希望使用JavaMail直接 访问外部的邮件服务器 防火墙,防火墙将需要 配置为允许此类访问。 JavaMail不支持访问 通过HTTP代理web服务器


    我尝试Ping imap.google.com:“Ping请求找不到主机imap.google.com。请检查名称,然后重试。”。我如何知道我的ip是否被禁止?谢谢,克里斯。确认网络问题。请与您的ISP或网络管理员联系。@mtariq您是如何发现网络问题的?您是如何解决的?我尝试Ping imap.google.com:“Ping请求找不到主机imap.google.com。请检查名称,然后重试。”。我如何知道我的ip是否被禁止?谢谢,克里斯。确认网络问题。请与您的ISP或网络管理员联系。@mtariq您是如何发现网络问题的?您是如何解决的?