如何检查通过 HttpsURLConnection 发送的 HTTP 请求 headers?
How to inspect the HTTP request headers sent through a HttpsURLConnection?
下面的简单 Java 代码有效。有没有一种简单的方法可以找出/检查实际发送的 HTTP 请求(不是响应)headers?
import java.net.URL;
import java.io.*;
import javax.net.ssl.HttpsURLConnection;
public class Test {
public static void main(String[] args) throws Exception {
String httpsURL = "https://api.gdax.com/products/BTC-USD/book?level=1";
URL myurl = new URL(httpsURL);
HttpsURLConnection con = (HttpsURLConnection) myurl.openConnection();
InputStream ins = con.getInputStream();
InputStreamReader isr = new InputStreamReader(ins);
BufferedReader in = new BufferedReader(isr);
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
}
}
我认为您不能以编程方式执行此操作,您可以在 Eclipse 中使用某种代理,例如 TCP/IP 监视器。或者启用 java 的调试选项,添加这些选项:
-Djava.util.logging.config.file=logging.properties
并放入logging.properties(默认在JRE_HOME\lib)下面的属性
sun.net.www.protocol.http.HttpsURLConnection.level = ALL
下面的简单 Java 代码有效。有没有一种简单的方法可以找出/检查实际发送的 HTTP 请求(不是响应)headers?
import java.net.URL;
import java.io.*;
import javax.net.ssl.HttpsURLConnection;
public class Test {
public static void main(String[] args) throws Exception {
String httpsURL = "https://api.gdax.com/products/BTC-USD/book?level=1";
URL myurl = new URL(httpsURL);
HttpsURLConnection con = (HttpsURLConnection) myurl.openConnection();
InputStream ins = con.getInputStream();
InputStreamReader isr = new InputStreamReader(ins);
BufferedReader in = new BufferedReader(isr);
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
}
}
我认为您不能以编程方式执行此操作,您可以在 Eclipse 中使用某种代理,例如 TCP/IP 监视器。或者启用 java 的调试选项,添加这些选项:
-Djava.util.logging.config.file=logging.properties
并放入logging.properties(默认在JRE_HOME\lib)下面的属性
sun.net.www.protocol.http.HttpsURLConnection.level = ALL