I can send the "postUrl" to server,but can not receive data from
server ,the length of "ireadbuffer16" is zero.
I don't why not receive data from data, and when calling this function, the app will display error and exit.
(the error info:e32user-cbase 46)

my function code:
TInt ConnectServer() {
TInt err;
err = iServer.Connect();
User::LeaveIfError(err);

netSocketAddr.Input(SocketIPAddr);
netSocketAddr.SetPort(PORT);
User::LeaveIfError (iSocket.Open (iServer, KAfInet, KSockStream, KProtocolInetTcp));
iSocket.Connect (netSocketAddr, iStatus);
User::WaitForRequest (iStatus);
if (iStatus != KErrNone) {
return iStatus;
}
PostUrl.Append(_L8("POST /Reg.do?flag=1&uid=tester HTTP/1.0\r\nConnection: Keep-Alive\r\n\r\n"));

iSocket.Send(PostUrl,0,iStatus);
User::WaitForRequest(iStatus);

TBuf8<512> responsestr;
iSocket.Recv(responsestr,0,iStatus);
TBuf<512> iReadBuffer16;
iReadBuffer16.Zero();
CnvUtfConverter::ConvertToUnicodeFromUtf8(iReadBuffer16, responsestr);

TInt lengh;
lengh = iReadBuffer16.Length();//return zero
Tbuf<64> buffer;
buffer.Format(_L("data length: %d"), length);
iEikonEnv->InfoMsg(buffer);
iSocket.CancelAll();
iSocket.Close();
return 0;
}