一直对于http协议的请求原理不是很明白,于是做了如下测试
用ServerSocket做了一个服务端,接收请求,并获取输入流打印,
用HTTPURLConnertion向服务端发送请求,
第一次测试时,客户端只使用了输出流,并使用了flush().然后再close,结果服务端什么都没有输出
就报错了
第二次测试,客户端,即使用了输出流,又使用了输入流,然后再close,结果服务端,正常输出了
,
于是迷茫了,到底时怎么回事啊,请问高手.
关于java的HTTPURLConnection的使用原理
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- snailplus 2015-09-19 16:51关注
HTTPURLConnection的原理就是HTTP通信原理。输出就是发出请求,输入就是取得响应。
一次完整的http会话就是客户端发出请求,服务器接收请求,根据请求内容做业务处理,处理后的数据响应给客户端,客户端接收响应内容。OVER!
以上任何一个环节出问题都会报错。并且请求与响应使用1个连接,此间如果断开会报错。
对于第一次测试,如果关闭的只是输出流那么是正确的操作,如果关闭的是连接,那么必然报错(没有完成会话,程序就结束了,同关闭连接)
对于第二次测试,完整会话过程。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Python爬取指定微博话题下的内容,保存为txt
- ¥15 vue2登录调用后端接口如何实现
- ¥65 永磁型步进电机PID算法
- ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
- ¥88 找成都本地经验丰富懂小程序开发的技术大咖
- ¥15 如何处理复杂数据表格的除法运算
- ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
- ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
- ¥15 latex怎么处理论文引理引用参考文献
- ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?