Exemple #1
0
void AddFriendScene::doSearchFriend()
{
	std::string sSearchField(m_txtSearchField->getText());
	sSearchField = trimRight(sSearchField);

	if (sSearchField.empty()) {
		CCMessageBox("搜索内容不能为空","ERROR");
		return;
	}

	this->ShowLoadingIndicator("");

	CCHttpRequest *request = new CCHttpRequest();
	request->setRequestType(CCHttpRequest::kHttpGet);
	request->setResponseCallback(this,httpresponse_selector(AddFriendScene::requestFinishedCallback));
	request->setTag("101");
    
	string _strUrl = CompleteUrl(URL_FRIEND_SEARCH);
	_strUrl.append(CCUserDefault::sharedUserDefault()->getStringForKey("userinfo"));
	_strUrl.append("/");
	_strUrl.append(sSearchField);

	request->setUrl(_strUrl.c_str());

	CCHttpClient *client = CCHttpClient::getInstance();
	client->send(request);

	request->release();
}
CCHttpClient* CCHttpClient::create() {
    CCHttpClient* c = new CCHttpClient();
    if(c->init()) {
        return (CCHttpClient*)c->autorelease();
    }
    CC_SAFE_RELEASE(c);
    return NULL;
}
Exemple #3
0
void AddFriendScene::addFriendRequest(std::string &targetUser)
{
	CCHttpRequest *request = new CCHttpRequest();
	request->setRequestType(CCHttpRequest::kHttpGet);
	request->setResponseCallback(this,httpresponse_selector(AddFriendScene::requestFinishedCallback));
	request->setTag("102");
    
	string _strUrl = CompleteUrl(URL_FRIEND_ADD_NEW);
	_strUrl.append(CCUserDefault::sharedUserDefault()->getStringForKey("userinfo"));
	_strUrl.append("/" + targetUser);

	request->setUrl(_strUrl.c_str());

	CCHttpClient *client = CCHttpClient::getInstance();
	client->send(request);
    
	request->release();
}
void MDHeroPrePromoLayer::showTaskInfo()
{
	this->ShowLoadingIndicator("");

	CCHttpRequest *request = new CCHttpRequest();
	request->setRequestType(CCHttpRequest::kHttpGet);
	request->setResponseCallback(this,httpresponse_selector(MDHeroPrePromoLayer::requestFinishedCallback));
	request->setTag("101");

	string _strUrl = CompleteUrl(URL_FRIEND_LIST);
	_strUrl.append(CCUserDefault::sharedUserDefault()->getStringForKey("userinfo"));

	request->setUrl(_strUrl.c_str());

	CCHttpClient *client = CCHttpClient::getInstance();
	client->send(request);

	request->release();
}
Exemple #5
0
void MailMainScene::doSearchFriend()
{
	this->ShowLoadingIndicator("");

	CCHttpRequest *request = new CCHttpRequest();
	request->setRequestType(CCHttpRequest::kHttpGet);
	request->setResponseCallback(this,callfuncND_selector(MailMainScene::requestFinishedCallback));
	request->setTag("101");

    string _strUrl = CompleteUrl(URL_FRIEND_LIST);
    _strUrl.append(CCUserDefault::sharedUserDefault()->getStringForKey("userinfo"));

	request->setUrl(_strUrl.c_str());

	CCHttpClient *client = CCHttpClient::getInstance();
	client->send(request);

	request->release();
}
void HttpRequestTest::requestHttpInfo(CAControl* btn, CCPoint point)
{
	loading = CAView::createWithColor(ccc4(255, 255, 255, 0));
	loading->setTag(200);
	loading->setFrame(this->getView()->getBounds());
	this->getView()->addSubview(loading);

	loadImage = CAImageView::createWithImage(CAImage::create("loading.png"));
	loadImage->setCenterOrigin(CADipPoint(size.width*0.5, size.height*0.5));
	loadImage->setScale(0.5);
	loading->addSubview(loadImage);
	CAScheduler::schedule(schedule_selector(HttpRequestTest::loadingAnim), this, 0.01, false);

	CALabel* msg = CALabel::createWithCenter(CADipRect(size.width*0.5, size.height*0.5, loadImage->getFrame().size.width*0.9, 50));
	msg->setText("Loading");
	msg->setColor(CAColor_blueStyle);
	msg->setFontSize(_px(22));
	msg->setTextAlignment(CATextAlignmentCenter);
	msg->setVerticalTextAlignmet(CAVerticalTextAlignmentCenter);
	loading->addSubview(msg);

	string url = "";
	if (inputWebsite->getText().find("http://")==string::npos)
	{
		url = "http://" + inputWebsite->getText();
	}
	else
	{
		url = inputWebsite->getText();
	}
	CCHttpRequest* request = new CCHttpRequest();
	request->setTag("Getpage");
	request->setRequestType(CCHttpRequest::kHttpGet);
	request->setUrl(url.c_str());
	request->setResponseCallback(this,httpresponse_selector(HttpRequestTest::requestResult));
	CCHttpClient* httpClient = CCHttpClient::getInstance();
	httpClient->setTimeoutForConnect(30);
	httpClient->send(request); 
	request->release();
}
//FFHttpClientDelegate
void FFHttpClient::didSendRequest()
{
    CCHttpClient *httpClient = CCHttpClient::getInstance();
    httpClient->setTimeoutForConnect(30);
    httpClient->send(mHttpRequest);
}
/// communication
ParseError* ParseManager::request(CCHttpRequest::HttpRequestType op, 
								  const std::string &url, 
								  const char* buffer,
								  size_t size,
								  CCObject *receiver, 
								  SEL_CallFuncND selector,
								  const char* contentType,
								  bool setMasterKey,
								  void* param)
{
	ParseError* error = NULL;

	CCHttpRequest* request = new CCHttpRequest();

	std::vector<std::string> headers;

	request->setRequestType(op);

	std::string fullUrl;
	if (strncmp(url.c_str(), "http", 4) != 0)
	{
		fullUrl = "https://api.parse.com" + url;
	}
	else
	{
		fullUrl = url;
	}

	request->setUrl(fullUrl.c_str());

	request->setResponseCallback(receiver, selector);

	request->setUserData(param);

	CCHttpClient* client = CCHttpClient::getInstance();


	if (contentType)
	{
		headers.push_back(contentType);
	}
	switch(op)
	{
		case CCHttpRequest::kHttpGet:
			if (size > 0)
			{
				char* condition = curl_escape(buffer, size);
				request->setUrl((fullUrl + "?" + condition).c_str());
			}
			break;
		case CCHttpRequest::kHttpPost:
			if (contentType == 0)
			{
				headers.push_back("Content-Type: application/json");
			}
			if (size > 0)
			{
				request->setRequestData(buffer, size);
			}
			break;
		case CCHttpRequest::kHttpPut:
			if (contentType == 0)
			{
				headers.push_back("Content-Type: application/json");
			}
			if (size > 0)
			{
				request->setRequestData(buffer, size);
			}
			break;
		case CCHttpRequest::kHttpDelete:
			break;
	}

	headers.push_back(std::string("X-Parse-Application-Id: ") + this->_applicationId);
	if (setMasterKey)
	{
		headers.push_back(std::string("X-Parse-Master-Key: ") + this->_masterKey);
	}
	else
	{
		headers.push_back(std::string("X-Parse-REST-API-Key: ") + this->_apiKey);
	}
	request->setHeaders(headers);

	client->send(request);

	request->release();

	return error;
}