为了账号安全,请及时绑定邮箱和手机立即绑定

为什么获取网页输入流不需要调用setDoInput(true)方法,而获取图片时,却需要调用这个方法获得图片的输入流,不是通过HttpUrlConnection对象的getInputStream可以获得指定URL的输入流吗?

为什么获取网页输入流不需要调用setDoInput(true)方法,而获取图片时,却需要调用这个方法获得图片的输入流,不是通过HttpUrlConnection对象的getInputStream可以获得指定URL的输入流吗?

正在回答

1 回答

httpUrlConnection.setDoOutput(true);以后就可以使用conn.getOutputStream().write()  

httpUrlConnection.setDoInput(true);以后就可以使用conn.getInputStream().read();  

  

get请求用不到conn.getOutputStream(),因为参数直接追加在地址后面,因此默认是false。  

post请求(比如:文件上传)需要往服务区传输大量的数据,这些数据是放在http的body里面的,因此需要在建立连接以后,往服务端写数据。  

  

因为总是使用conn.getInputStream()获取服务端的响应,因此默认值是true。 


0 回复 有任何疑惑可以回复我~
#1

aellenlei 提问者

非常感谢!
2015-06-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android中的Http通信
  • 参与学习       64671    人
  • 解答问题       306    个

了解Android-http网络编程应用,常见忘了请求相关应用

进入课程

为什么获取网页输入流不需要调用setDoInput(true)方法,而获取图片时,却需要调用这个方法获得图片的输入流,不是通过HttpUrlConnection对象的getInputStream可以获得指定URL的输入流吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信