Symbian 中的 Http 开发详解
2010-03-24 17:22:00 来源:WEB开发网RStringF realm = strP.StringF(HTTP::ERealm, RHTTPSession::GetTable());
THTTPHdrVal realmVal;
if (fieldVal.StrF() == basic)
// check the header has a 'realm' parameter
if (hdr.GetParam(wwwAuth, realm, realmVal) == KErrNone)
{
RStringF realmValStr = strP.StringF(realmVal.StrF());
fieldVal16.Copy(realmValStr);
Printf(_L("Realm is: %S "), &fieldVal16);
}
}
}
// Advance the iterator
++it;
}
6 取得响应体
要取得响应体,就必须使用包含在事务响应里的数据提供者。在客户端完成处理所有的响应体数据片后,必须数据释放数据提供者。
case THTTPEvent::EGotResponseBodyData:
{
// Some (more) body data has been received. Get the body data supplier
MHTTPDataSupplier* body = aTransaction.Response().Body();
TPtrC8 dataChunk;
TBool isLast = body->GetNextDataPart(dataChunk);
Dump(dataChunk);
if (isLast)
Printf(_L("Got the last data chunk. "));
// Done with that bit of body data
body->ReleaseData();
}
break;
7 完成事务
事务的完成(不管是成功还是失败),都要停止本地活动调度器。枚举值EResponseComplete仅是事务完成的一个信号,而不用于完成任何具体的工作。具体的工作放在成功或是失败的分支里处理:
case THTTPEvent::EResponseComplete:
{
// The transaction's response is complete
Printf(_L(" Transaction Complete "));
}
break;
case THTTPEvent::ESucceeded:
{
Printf(_L("Transaction Successful "));
aTransaction.Close();
CActiveScheduler::Stop();
}
break;
case THTTPEvent::EFailed:
{
Printf(_L("Transaction Failed "));
aTransaction.Close();
- ››开发Android 日历教程
- ››开发学院总结 Win 8实用技巧大全
- ››开发学院原创教程:把win8的IE10放桌面上方法(非...
- ››HttpHandler生成随机码、验证码
- ››Http 403错误重现实验及解决方法
- ››开发者眼中的Windows Phone和Android
- ››Symbian S60 SocketConnection参数
- ››开发学院教你用SQL 语句最快速清空MySQL 数据表的...
- ››Symbian乏力:2010年诺基亚悲情大事记
- ››Symbian三大升级开启2011年新战略
- ››Symbian/Android/iOS/WM安装包对比
- ››Symbian一个活动对象的测试例子
更多精彩
赞助商链接