关于socket的问题
本段代码是将content字符串内容传到服务器,等待服务器响应并将服务器传回的字符串返回,不明白为什么执行sclient.recv(recvBuf,Len(recvBuf),0)这句的时候就一直阻塞,停止响应了,如果ulParam=1则直接返回空值,服务器也没收到任何数据。代码如下:
string result=''
socketstream sclient
sclient = create socketstream
ulong ulParam = 0
sclient.ioctlsocket(ws.FIONBIO, ulParam)
ulong ulAddr
ulAddr = ws.inet_addr(address)
if sclient.wsconnect(ulAddr,integer(port)) <> -1 then
blob buf
blob recvBuf
buf = blob(content)
recvBuf = blob(space(256))
sclient.send(buf,Len(buf),0)
do while sclient.recv(recvBuf,Len(recvBuf),0) <> -1
result = result + trim(string(recvBuf))
loop
result = result + trim(string(recvBuf))
sclient.closesocket()
destroy sclient
end if
return result
string result=''
socketstream sclient
sclient = create socketstream
ulong ulParam = 0
sclient.ioctlsocket(ws.FIONBIO, ulParam)
ulong ulAddr
ulAddr = ws.inet_addr(address)
if sclient.wsconnect(ulAddr,integer(port)) <> -1 then
blob buf
blob recvBuf
buf = blob(content)
recvBuf = blob(space(256))
sclient.send(buf,Len(buf),0)
do while sclient.recv(recvBuf,Len(recvBuf),0) <> -1
result = result + trim(string(recvBuf))
loop
result = result + trim(string(recvBuf))
sclient.closesocket()
destroy sclient
end if
return result
...全文
相关推荐
Socket通信,通过异步,解决粘包问题
Socket通信,通过异步,解决粘包问题
Java socket通讯实现过程及问题解决
主要介绍了Java socket通讯实现过程及问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
vue-socket.io接收不到数据问题的解决方法
最近公司的一个vue项目用到了vue-socket.io来处理socket数据传输,之前用过socket.io-client,现在知道vue-socket.io是基于socket.io-client的一层封装,将socket挂于全局从而更方便的书写。 于是把代码拉取下来运行: 什么鬼,同样的代码为什么我的就接收不到数据,自己新建一个测试一下吧! 先用express和socket.io搭个小socket服务器: let express = require('express'); let app = express(); let server= require('http').Server(
Java Socket通信介绍及可能遇到的问题解决
最近在学习Java中的Socket通信,所以下面这篇文章主要给大家介绍了关于Java Socket通信介绍及可能遇到问题的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起看看吧。
java和as3 socket通信 解决安全沙箱问题
NULL 博文链接:https://renzaihangzhou.iteye.com/blog/2007855


API 调用
