Android6.0-11.0
СompileSdkVersion 30
minsdk版本23
HttpURLConnection忽略代理——当指定一个不存在的地址时,它不会发誓
我需要在编译应用程序后,应用程序可以通过代理发送请求
尝试了以下操作:
System.setProperty("http.proxyHost", "host");
System.setProperty("http.proxyPort", "port_number");
System.setProperty("http.proxyUser", "user");
System.setProperty("http.proxyPassword", "password");
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("***.***.***.***", 1111));
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection(proxy);
connection.connect();
我的代码:
String getText(String url) throws IOException {
Properties systemSettings = System.getProperties();
systemSettings.put("https.proxyHost","***.***.***.***");
systemSettings.put("https.proxyPort", "1490");
systemSettings.put("https.proxyUsername", "user");
systemSettings.put("https.proxyPassword", "pass");
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
connection.connect();
int responseCode = connection.getResponseCode();
InputStream inputStream;
if (200 <= responseCode && responseCode <= 299) {
inputStream = connection.getInputStream();
} else {
inputStream = connection.getErrorStream();
}
BufferedReader in1 = new BufferedReader(
new InputStreamReader(
inputStream));
StringBuilder response = new StringBuilder();
String currentLine;
while ((currentLine = in1.readLine()) != null)
response.append(currentLine);
in1.close();
return response.toString();
}
使用此选项时,根本不会加载页面:
Authenticator authenticator = new Authenticator() {
public PasswordAuthentication getPasswordAuthentication() {
return (new PasswordAuthentication("user",
"password".toCharArray()));
}
};
Authenticator.setDefault(authenticator);
请告诉我我做错了什么。
我理解你的问题,如果你不需要使用代理,请使用以下代码
httpurlconnection.openconnection(Proxy.NO_PROXY)
或者如果使用代理
//Proxy instance, proxy ip = 10.0.0.1 with port 8080
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("10.0.0.1", 8080));
conn = new URL(urlString).openConnection(proxy);
如果你能得到407的回复
然后试试这个代码
Authenticator authenticator = new Authenticator() {
public PasswordAuthentication getPasswordAuthentication() {
return (new PasswordAuthentication("user",
"password".toCharArray()));
}
};
Authenticator.setDefault(authenticator);
问题内容: 我正在开发一个使用Spring-boot,关系数据库和Elasticsearch的应用程序。 我在代码的2个不同位置使用JSON序列化: 在REST API的响应中。 当代码与Elasticsearch交互时。 我在Elasticsearch中需要一些属性,但我想向应用程序用户隐藏(例如,来自关系数据库的内部ID)。 这是一个实体的例子: 问题 :当对象持久化在Elasticsearc
我一直在搜索和阅读关于这个主题的文档,但我没有尽力让它工作。https://cli.vuejs.org/config/#devserver-代理 我让我的Vue.js申请正常了 所以我按命令运行应用程序 在…上http://localhost:8080/. 相当标准的东西。 但是我的应用程序需要一个运行在https://localhost/的PHP后端,所以我在根目录vue.confic.js文件
问题内容: 我正在某个网站上插入一些标题中的换行符。假设我无法编辑源HTML,是否有CSS可以忽略这些中断的方法? 我正在移动网站的优化,所以我真的不想使用JavaScript。 问题答案: 使用css,您可以“隐藏” br标签,它们不会起作用: 如果只想在特定的标题类型中隐藏某些内容,只需使CSS更具体即可。
我在我的项目中使用CMake,我想在项目中引入整洁的支票。 为此目的,我使用和文件进行检查设置。 我想使用警告作为错误,以便在CI中有可靠的方法来检查提交是否引入了一些新的违规行为。不幸的是,由于第三方库,我在启用检查时遇到了一些问题。 请看EDIT2! 例如,我使用,这是一个只有头的库。由于这一事实,我在代码中收到了一些警告,例如“a_file.cpp” 我有点不知道如何忽略这种问题,因为似乎无
问题内容: 这是我的实体: 这是我获得人员名单的方式: 如果我正确理解提取图,则它必须仅加载我指定的那些字段。但是,字段“ birthDate”也已加载。此外,我看到在hibernateSQL查询中选择了4列。 如何解决?我使用hibernate 5.1.0作为JPA提供程序。 问题答案: 实体图旨在控制延迟或渴望加载哪些关系(例如,一对一,一对多等)。它们可能不适用于加载各个列(取决于提供程序)
由于某些原因,我无法将CURL与HTTPS一起使用。在我升级curl库之前,一切都很正常。现在,我在尝试执行CURL请求时遇到了这种响应:SSL CA证书(路径?访问权限?)有问题 以下是关于相关问题的建议,我试图做到以下几点: > 启用并指向从http://curl.haxx.se/docs/caextract.html下载的cacert.pem 我也试着用positiveSSL做同样的事情。c