⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 servermanager1.cpp

📁 symbian HTTP 协议的一个实例程序 本人参与制作 功能是将电话本上传到服务器 并下载更新 可用于学习 参考
💻 CPP
字号:
/* Copyright (c) 2007, Nokia. All rights reserved */
#include <aknnotewrappers.h> 
#include "ServerManager.h"
#include "Common.h"
#include "HTTPEngine.h"

_LIT(KStatusFormat, "%d: %S");      // Format string for status returned from web server, e.g. "200: OK" or "404: Not Found"
const TInt KStatusCodeLength = 10;  // Enough room in a descriptor for code + ": "

CServerManager* CServerManager::NewL()
{
    CServerManager* self = NewLC();
    CleanupStack::Pop(self);
    return self;
}

CServerManager* CServerManager::NewLC()
{
    CServerManager* self = new (ELeave) CServerManager();
    CleanupStack::PushL(self);
    self->ConstructL();
    return self;
}

void CServerManager::ConstructL()
{
	
}

CServerManager::CServerManager()
{
	m_pHTTPEngine = NULL;
	m_SendType = 0;
	
}


CServerManager::~CServerManager()
{
	MEMORY_FREE(m_pHTTPEngine);
}

//make url and send to HTTPEngine
void CServerManager::MakeRequest()
{
	TBuf<128> sUrl;
	switch(m_SendType) 
	{
	case ERegister:
		{
			//http://www.ldci.mobi/orcProject/register?mobile=13800138001&pass=123456

			sUrl.Copy(_L("http://www.ldci.mobi/orcProject/register?mobile="));
			sUrl.Append(TempPhone);
			sUrl.Append(_L("&pass="));
			sUrl.Append(TempPassWord);
			//send to HTTPEngine
			m_pHTTPEngine->GetRequestL(sUrl);
		}
		break;
	case ELogin:
		{
			//http://www.ldci.mobi/orcProject/login?mobile=13800138001&pass=123456

			sUrl.Copy(_L("http://www.ldci.mobi/orcProject/login?mobile="));
			sUrl.Append(TempPhone);
			sUrl.Append(_L("&pass="));
			sUrl.Append(TempPassWord);
			//send to HTTPEngine
			m_pHTTPEngine->GetRequestL(sUrl);
		}
		break;
	case EUpdate:
		{
			//http://www.ldci.mobi/orcProject/update

			sUrl.Copy(_L("http://www.ldci.mobi/orcProject/update"));

			//send to HTTPEngine
			
		}
		break;
	case EDownload:
		{
			//http://www.ldci.mobi/orcProject/download?mobile=13800138001&pass=123456

			sUrl.Copy(_L("http://www.ldci.mobi/orcProject/download?mobile="));
			sUrl.Append(TempPhone);
			sUrl.Append(_L("&pass="));
			sUrl.Append(TempPassWord);

			//send to HTTPEngine

		}
		break;
	default:
		break;
	}

}


void CServerManager::ParseRecponseContent(const TDesC& /*aResponse*/)
{

}


void CServerManager::PackUpdateContent()
{

}

void CServerManager::LoginInfoNotify(const TDesC & aNumber, const TDesC & aPassword,TInt aModel)
{
	m_SendType = aModel;//distinguish SendType'1,2,3,4'

	TempPhone.Copy(aNumber);
	TempPassWord.Copy(aPassword);
}
void CServerManager::ResponseStatusL(TInt aStatusCode, const TDesC& aStatusText)
{
	HBufC* buf = HBufC::NewLC(aStatusText.Length() + KStatusCodeLength);
    buf->Des().Format(KStatusFormat, aStatusCode, &aStatusText);
    CAknInformationNote* note = new (ELeave) CAknInformationNote;
    note->ExecuteLD(*buf);
    CleanupStack::PopAndDestroy(buf);
}
void CServerManager::ResponseReceivedL(const TDesC& aResponseBuffer)
{
	m_pServerReNotify->ServerReNotify(1);
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -