在哪些方法调用java之后向服务器发送实际请求?

在哪些方法调用java之后向服务器发送实际请求?,java,http,connection,request,inputstream,Java,Http,Connection,Request,Inputstream,例如,我有下面的java代码: URL u = new URL("http://google.com"); URLConnection c = u.openConnection(); InputStream s = c.getInputStream(); int i; while ((i = s.read()) != -1) { //do something here } 我无法理解,在哪个方法调用之后,java会在哪个时刻将实际请求发送到服务器?URL类

例如,我有下面的java代码:

URL u = new URL("http://google.com");  
URLConnection c = u.openConnection();  
InputStream s = c.getInputStream();  
int i;  
while ((i = s.read()) != -1) {  
     //do something here  
}  

我无法理解,在哪个方法调用之后,java会在哪个时刻将实际请求发送到服务器?

URL类的openConnection方法只会返回一个的新实例,因为您的协议是http。
在调用getInputStream或getOutputStream方法之前,实际连接不会发生。通过调用这些方法,connect被调用,google服务器接收连接。由于协议是http,服务器将返回您使用s.read读取的google主页。它应该为您提供google主页的html页面

URL类的openConnection方法,只返回一个的新实例,因为您的协议是http。 在调用getInputStream或getOutputStream方法之前,实际连接不会发生。通过调用这些方法,connect被调用,google服务器接收连接。由于协议是http,服务器将返回您使用s.read读取的google主页。它应该为您提供google主页的html页面,它发生在openConnection方法中。你可以通过阅读它的

每次通过为此URL调用协议处理程序的openConnection方法打开一个新连接

它发生在openConnection方法期间。你可以通过阅读它的

每次通过为此URL调用协议处理程序的openConnection方法打开一个新连接

当您调用openConnection时,它实际上是在尝试使用指定的url创建连接,如果失败,则抛出IOException

openConnection—每次通过调用此URL的协议处理程序的openConnection方法打开新连接。

调用openConnection时,它实际上是在尝试使用指定的URL创建连接,如果失败,则抛出IOException


openConnection—每次通过调用此URL的协议处理程序的openConnection方法打开新连接。

您的答案是错误的。下面的正确答案:对于更复杂的请求,可以调用URL对象的openConnection方法来获取HttpURLConnection对象。在发出请求之前,可以使用其他信息准备此对象。要发出请求,请调用URLConnection上的方法,如getInputStream或getOutputStream。您的答案是错误的。下面的正确答案:对于更复杂的请求,可以调用URL对象的openConnection方法来获取HttpURLConnection对象。在发出请求之前,可以使用其他信息准备此对象。要发出请求,请调用URLConnection上的方法,如getInputStream或getOutputStream。