相关疑难解决方法(0)

如何让HttpURLConnection使用代理?

如果我这样做......

conn = new URL(urlString).openConnection();
System.out.println("Proxy? " + conn.usingProxy());
Run Code Online (Sandbox Code Playgroud)

它打印

Proxy? false
Run Code Online (Sandbox Code Playgroud)

问题是,我支持代理.JVM从哪里获取Windows上的代理信息?我该如何设置?我的所有其他应用程序似乎对我的代理非常满意.

java windows proxy http

128
推荐指数
6
解决办法
25万
查看次数

当URL启动时,为什么会出现"java.net.ConnectException:Connection timed out"异常?

ConnectException: Connection timed out从代码中获得了一些频率.我试图点击的网址已经启动.相同的代码适用于某些用户,但不适用于其他用户.似乎一旦一个用户开始获得此异常,他们就会继续获得异常.

这是堆栈跟踪:

java.net.ConnectException: Connection timed out
Caused by: java.net.ConnectException: Connection timed out
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    at java.net.Socket.connect(Socket.java:516)
    at java.net.Socket.connect(Socket.java:466)
    at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:365)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:477)
    at sun.net.www.http.HttpClient.<init>(HttpClient.java:214)
    at sun.net.www.http.HttpClient.New(HttpClient.java:287)
    at sun.net.www.http.HttpClient.New(HttpClient.java:299)
    at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:796)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:748)
    at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:673)
    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:840)
Run Code Online (Sandbox Code Playgroud)

以下是我的代码中的代码段:

URLConnection urlConnection = null;
OutputStream outputStream = null;
OutputStreamWriter outputStreamWriter = null;
InputStream inputStream = null;

try {
    URL url = new URL(urlBase);
    urlConnection = url.openConnection();
    urlConnection.setDoOutput(true);

    outputStream = …
Run Code Online (Sandbox Code Playgroud)

java connection urlconnection connectexception

81
推荐指数
5
解决办法
41万
查看次数

HTTP代理背后的Emacs

Emacs能够使用url.elW3 Web浏览器等软件包访问Internet .

此外,Emacs Lisp包存档严重依赖于包url.el.

现在,如何配置Emacs以使用我的HTTP代理连接到Internet?

在代理背后的ELPA任何帮助的奖励积分.

是的,之前我遇到过HTTP代理问题.

emacs proxy elpa

39
推荐指数
4
解决办法
4万
查看次数

如何为Jsoup添加代理支持?

我是Java的新手,我的第一个任务是解析大约10,000个URL并提取一些信息,为此我使用Jsoup并且它工作正常.

但现在我想为它添加代理支持.代理也有用户名和密码.

谁能帮我这个?

java jsoup

39
推荐指数
5
解决办法
4万
查看次数

Java的ProxySelector不能与自动代理配置脚本一起使用吗?

我希望我的Java程序使用系统的代理配置.因此,我使用在许多地方找到的代码(例如此答案)设置java.net.useSystemProxies为true并调用ProxySelector.getDefault().select(...)以发现我想要访问的特定主机的代理.当我在Internet属性中配置单个显式代理服务器时,这可以正常工作.但是如果我设置了"使用自动配置脚本",它总是返回DIRECT"代理".

我知道该脚本有效,因为我的浏览器可以访问它为其返回代理服务器的主机,并且没有脚本集,它不能.我甚至尝试将脚本简化为最基本的要点:

function FindProxyForURL(url, host)
{
    return "PROXY my.proxy.mydomain:3128";
}
Run Code Online (Sandbox Code Playgroud)

它在我的浏览器中工作,但ProxySelector.getDefault().select(...)仍然只返回DIRECT.

我错过了什么吗?(这是在Java 1.6和Windows 7上,它是否重要.)

java proxy

23
推荐指数
4
解决办法
2万
查看次数

Java程序可以通过代理服务器建立JDBC连接吗

我想通过代理服务器与位于我的网络之外的 Oracle DB 服务器通信。我可以通过具有代理设置的浏览器访问托管在同一台机器上的 Web 应用程序。一个简单的Java程序可以通过代理服务器建立JDBC连接吗?

*提供一个例子会更好 *

问候。

java proxy jdbc

8
推荐指数
1
解决办法
2万
查看次数

如何按星级排序/过滤Google代码项目?

我想知道在Google Code上托管哪些项目的明星最多,特别是在按标签搜索时,如下所示:

https://code.google.com/hosting/search?q=label%3aAndroid

google-code

6
推荐指数
1
解决办法
556
查看次数

intellij Idea中连接超时错误

我正在尝试使用 HttpURLConnection 发出简单的 http 请求。我收到此错误,连接超时。我正在使用intellij IDEA,并正确设置代理。检查设置中的连接,显示连接成功。可能出了什么问题?这是我的代码。

import java.io.*;
import java.net.*;

/**
 * Created by admin on 22/8/15.
 */
public class Hello {
    public static void main(String [] args)
    {
        try
        {
            URL url = new URL("http://www.google.com");
            URLConnection urlConnection = url.openConnection();
            HttpURLConnection connection = null;
            if(urlConnection instanceof HttpURLConnection)
            {
                connection = (HttpURLConnection) urlConnection;
            }
            else
            {
                System.out.println("Please enter an HTTP URL.");
                return;
            }
            BufferedReader in = new BufferedReader(
                    new InputStreamReader(connection.getInputStream()));
            String urlString = "";
            String current;
            while((current = in.readLine()) != null) …
Run Code Online (Sandbox Code Playgroud)

java intellij-idea

6
推荐指数
1
解决办法
2万
查看次数

使用 OkHttp 连接到 HTTPS 代理

我们的环境只允许 HTTPS 连接,因此他们为我们提供了 HTTPS 代理,这是连接到外部世界的唯一方式。我们必须通过此代理以及我们的 Java 应用程序(使用 OkHttp 作为其 HTTP 客户端)路由所有流量。

我们已经像这样设置了代理:

Authenticator proxyAuthenticator = new Authenticator() {
    @Override
    public Request authenticate(Route route, Response response) throws IOException {
        String credential = Credentials.basic(username, password);
        return response.request().newBuilder()
                .header("Proxy-Authorization", credential)
                .build();
    }
};

return builder
        .proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort)))
        .proxyAuthenticator(proxyAuthenticator)
        .build();
Run Code Online (Sandbox Code Playgroud)

我们使用鱿鱼(作为 HTTP 代理)对其进行了测试。但我们发现这在真实环境中行不通。因为代理是 HTTPS(SSL 或 TLS 隧道?)而不是 HTTP。

我们可以通过设置以下环境变量来强制所有其他 Linux 应用程序(例如wget)使用 https 代理:

export https_proxy='http://domain\user:password@prox-server:port'
Run Code Online (Sandbox Code Playgroud)

但 Java 应用程序无法工作,也无法使用此代理路由流量。

顺便说一句,我们无法通过设置系统属性等来配置 JVM 通过代理http.proxyHost路由http.proxyPort所有https.proxyHost流量https.proxyPort

有没有简单直接的方法来为 …

java ssl tunneling http-proxy okhttp

6
推荐指数
1
解决办法
6458
查看次数

代理使用Java URLConnection类

我是Java的新手.我正在使用以下代码来调用REST API,它在简单的环境中工作正常,但是当我使用代理环境时它抛出了NullPointerException.我在google上找到了我们必须为其设置代理设置的结果.我根据http://www.javaworld.com/javaworld/javatips/jw-javatip42.html文章设置代理,但这不起作用+ base64Encode(密码)创建语法错误.

URL url = new URL("http://examplerestapi/get/user");
URLConnection yc = url.openConnection();



in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
String inputLine;

while ((inputLine = in.readLine()) != null) {
       sb.append(inputLine);
}

String res = sb.toString();
Run Code Online (Sandbox Code Playgroud)

请帮我设置代理主机,端口,用户名和密码.

java proxy urlconnection

5
推荐指数
1
解决办法
2万
查看次数

Java 代理设置 - Ubuntu

如何从命令行在 Ubuntu(10.04 或 12.04)中设置 Java 代理设置?我的目标是获得直接连接,但默认情况下它从浏览器设置中获取,这些设置旨在通过代理进行 - 只是我不希望 Java 通过代理进行。

我在 Ubuntu 中运行一个应用程序服务器,它提供远程桌面会话。我可以将 Java 控制面板放入用户的桌面,然后他们(每个单独的用户)可以在网络设置下设置代理设置。但是 - 这意味着我必须告诉每个用户进行此设置,这是行不通的。

我希望它通过服务器本身的一些命令行或环境变量设置,所以它默认为“直接连接”。我不熟悉 Java 编程,为此提供 Java 代码也无济于事,我认为必须可以在 Java 启动时设置默认值?欢迎任何指点。

我怎样才能做到这一点?

java ubuntu proxy network-programming

5
推荐指数
1
解决办法
1万
查看次数

通过代理java下载文件

我有一个问题从URL www.example.com/example.pdf通过代理下载文件并将其保存在java中的文件系统上.有没有人对这如何运作有所了解?如果我得到InputStream,我可以简单地将它保存到文件系统:

final ReadableByteChannel rbc = Channels.newChannel(httpUrlConnetion.getInputStream());    
final FileOutputStream fos = new FileOutputStream(file);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
Run Code Online (Sandbox Code Playgroud)

但如何通过代理获取网址的输入流?如果我这样做:

SocketAddress addr = new InetSocketAddress("my.proxy.com", 8080);
Proxy proxy = new Proxy(Proxy.Type.HTTP, addr);
URL url = new URL("http://my.real.url.com/");
URLConnection conn = url.openConnection(proxy);
Run Code Online (Sandbox Code Playgroud)

我得到这个例外:

java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at java.io.BufferedInputStream.fill(Unknown Source)
    at java.io.BufferedInputStream.read1(Unknown Source)
    at java.io.BufferedInputStream.read(Unknown Source)
    at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
    at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
    at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at app.model.mail.crawler.newimpl.FileLoader.getSourceOfSiteViaProxy(FileLoader.java:167)
    at app.model.mail.crawler.newimpl.FileLoader.process(FileLoader.java:220)
    at app.model.mail.crawler.newimpl.FileLoader.run(FileLoader.java:57) …
Run Code Online (Sandbox Code Playgroud)

java connection proxy http stream

5
推荐指数
3
解决办法
7550
查看次数

如何从代理服务器后面的Java应用程序访问Microsoft Graph Java API?

我正在使用MS图形Java sdk,以便从我的Java应用程序访问O365 ODFB驱动器。当我绕过企业代理服务器(连接到开放式互联网)时,便能够从API中获得所需的响应。但是当我通过代理服务器连接时,出现以下异常:

SEVERE: Throwable detail: com.microsoft.graph.core.ClientException: Error during http request
Exception in thread "main" com.microsoft.graph.core.ClientException: Error during http request
    at com.microsoft.graph.http.DefaultHttpProvider.sendRequestInternal(DefaultHttpProvider.java:356)
    at com.microsoft.graph.http.DefaultHttpProvider.send(DefaultHttpProvider.java:197)
    at com.microsoft.graph.http.DefaultHttpProvider.send(DefaultHttpProvider.java:177)
    at com.microsoft.graph.http.BaseCollectionRequest.send(BaseCollectionRequest.java:87)
    at com.microsoft.graph.requests.generated.BaseDriveItemCollectionRequest.get(BaseDriveItemCollectionRequest.java:54)
    at com.example.TestMain.main(TestMain.java:148)
Caused by: java.net.ConnectException: Connection timed out: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.connect(Unknown Source)
    at sun.security.ssl.BaseSSLSocketImpl.connect(Unknown Source)
    at sun.net.NetworkClient.doConnect(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.protocol.https.HttpsClient.<init>(Unknown …
Run Code Online (Sandbox Code Playgroud)

java office365 microsoft-graph microsoft-graph-sdks

5
推荐指数
1
解决办法
867
查看次数