关于从Socket流中读取数据的请教!
代码中有一个Socket
Socket fd;
它是用来将HTTP请求发送到WebServer,之后再取到WebServer的返回结果。例如:
发送:
GET http://www.sina.com.cn HTTP/1.0
...
...
WebServer会返回相应的结果:
HTTP 200 OK
...
...
我在代码中设置了相应的输入输出流
InputStream is;
OutputStream os;
is = fd.getInputStream();
os = fd.getOutputStream();
之后用is将请求数据(已转换成byte[])成功发送到WebServer。(通过抓包工具看出已成功发送)
接着用os进行接收
int iLength = os.available();
byte[] b = new byte[iLength];
os.read(b);
但是b却没有写入任何内容。
(这里要说明的是我通过抓包工具看出WebServer已经将正确的信息响应到本地)
请问在实现这个Socket流的接收过程中,我是否还要做些别的什么才能正确得到Socket的响应?
我听说有一个叫BufferedInputStream, BufferedOutputStream是否与这个有关?
是否是Socket数据流需要缓冲?
Socket fd;
它是用来将HTTP请求发送到WebServer,之后再取到WebServer的返回结果。例如:
发送:
GET http://www.sina.com.cn HTTP/1.0
...
...
WebServer会返回相应的结果:
HTTP 200 OK
...
...
我在代码中设置了相应的输入输出流
InputStream is;
OutputStream os;
is = fd.getInputStream();
os = fd.getOutputStream();
之后用is将请求数据(已转换成byte[])成功发送到WebServer。(通过抓包工具看出已成功发送)
接着用os进行接收
int iLength = os.available();
byte[] b = new byte[iLength];
os.read(b);
但是b却没有写入任何内容。
(这里要说明的是我通过抓包工具看出WebServer已经将正确的信息响应到本地)
请问在实现这个Socket流的接收过程中,我是否还要做些别的什么才能正确得到Socket的响应?
我听说有一个叫BufferedInputStream, BufferedOutputStream是否与这个有关?
是否是Socket数据流需要缓冲?
...全文
相关推荐
socket客户端请求
用java写的socket客户端,实用于初学者,了解java用socket方法发送请求,接收服务器端的返回信息.......
java聊天室(socket编程)
自己做的,大家如果下载,请勿见笑!!我是个java初学者!!!!!!!!!!!
MFC+ffmpeg+socket实时解码H.264码流
MFC+ffmpeg+socket实时解码H.264码流,具体的参考博客内容有说明
java InputStream读取数据问题
NULL 博文链接:https://cuisuqiang.iteye.com/blog/1434416
视频推流调试.rar java PHP c++ 推流调试工具,socket开发
视频推流调试.rar java PHP c++ 推流调试工具,socket开发


Java SE
