获取HTTP头协议中状态值和数据大小

本文介绍如何从HTTP响应头中解析状态码及获取文件大小的方法。通过具体的代码示例,展示了如何使用C++来读取HTTP状态码和内容长度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

得到HTTP头协议后, 获取状态值和返回数据的大小。

void CClientEngine::MHFRunL(RHTTPTransaction aTransaction,
        const THTTPEvent& aEvent)
    {
    switch (aEvent.iStatus)
        {
        case THTTPEvent::EGotResponseHeaders:
            {
            // Get HTTP status code from header (e.g. 200)
            RHTTPResponse resp = aTransaction.Response();
            TInt status = resp.StatusCode();

            // Get status text (e.g. "OK")
            TBuf<KStatustextBufferSize> statusText;
            statusText.Copy(resp.StatusText().DesC());

            //从消息头中获取文件大小       
            RHTTPHeaders headers = resp.GetHeaderCollection();

            THTTPHdrVal aHeaderValue;
            TRAPD(Err,
                    RStringPool string_pool = iSession.StringPool ();
                    RStringF contLength = string_pool.OpenFStringL (_L8("Content-Length") );
                    headers.GetField (contLength, 0, aHeaderValue );
                    contLength.Close ();
            );

            TInt nTotalSize = aHeaderValue.Int();

            TBuf<32> bTotalSize;
            bTotalSize.AppendNum(nTotalSize);
            break;
            }
        }
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值