客户端的在接收服务器返回的信息以后
用户需要将返回的信息内容进行分析
以得到用户所需要的数据
信息是一个字符串形式
由3个数字 一个空格和一段文字信息组成
第1个数字若为1或者2
则表示返回值正确
若为3
表示一个中间层的肯定回答
此时 服务器会等待客户端进一步的信息
若为其他
则表示错误
第2个数字表示回答的类型
若为0
则表示语法错误
若为1则表示信息内容
第3个数字表示对错误进行具体的分类
在文字信息中
如果内容为ERROR表示出现用户名或密码错误
否则,表示验证成功
下面将使用自定义函数Recv()来接收数据
然后对数据进行分析
CString str1=" "; //初始化字符串变量 用于存放服务器返回的信息
char ch; //定义字符变量 用于字符比较
int i=0; //循环变量初始化为0
strl=Recv(); //调用Recv()函数得到服务器返回的信息
if(str1.GetLength()>0) //标胶str1的长度
{
ch = str1.GetAt(i); //将接收到的第一个字符赋给ch
}
if(ch==1&&ch==2) //如果返回的第一个字符等于1或者2 表示返回值正确
{
while(i<= str1.GetLength()&&ch!=NULL)
{
switch(ch)
case ERROR: //出现错误
MessageBox("用户名或密码错误!");
break;
case SUSS: //验证成功
MEssageBox("登录成功!");
return true;
break;
ch = str1.GetAt(++i); //循环查看返回的信息
}
}
在代码中
用户通过Cstring::GetAt(0)函数可以获得服务器返回信息的第一个字符
如果第一个字符等于1或2
则表示返回值正确
否则表示发生错误
最后
使用便利i进行循环获得命令值
如果ERROR表示验证错误
否则表示成功