Cocos2d-x

Cocos2d-x クライアント側の処理とデータ送信(Httpリクエスト)

投稿日:2017年3月29日 更新日:

cocos2dx

この記事は「Cocos2d-x セーブデータをサーバに送信して保存する」の続きになります。

 

・第1回 : サーバにデータを保存したい理由と全体の流れ

・第2回 : クライアント側の処理とデータ送信(Httpリクエスト)(ここ)

・第3回 : サーバ側の処理とデータ送信(Httpレスポンス)

・第4回 : クライアント側のレスポンス処理

 

 

クライアント側の処理とデータ送信(Httpリクエスト)

クライアント側ではJson形式のデータを作成し、サーバにデータを送信する処理までを記述します。

flow_2

 

 

Json形式のデータ

今回の例では、キャラのレベルとHPをJsonデータとして送信することを想定します。

■サーバに送信するデータ

・レベル(”1″)

・HP(”20″)

 

これをJson形式のデータにするとこうなります。(一例です)

[{“level”:”1″,”hp”:”20″}]

 

ではサーバにJsonデータを送信するプログラムを実装してきます。

 

 

プログラムの実装

    #include "HttpClient.h"
    #include "cocos-ext.h"
    #include "spine/Json.h"

    using namespace cocos2d::network;
    using namespace cocos2d::extension;

 

    // URL、ヘッダの設定 
    auto r = new cocos2d::network::HttpRequest();
    r->setUrl("phpサーバのアドレス");
    std::vector<std::string> h;
    h.push_back("Content-Type: application/json");
    r->setHeaders(h);
    r->setRequestType(HttpRequest::Type::POST);
    
    // データの設定
    std::string level = "1";
    std::string hp = "20";
    std::string data = "[{\"level\":\"" + level + "\", \"hp\":\"" + hp + "\"}]";
    const char* buffer = data.c_str();
    r->setRequestData(buffer, strlen(buffer));
    
    // データ送信
    network::HttpClient::getInstance()->send(r);
    r->release();

 

 

次回は「第3回 : サーバ側の処理とデータ送信(Httpレスポンス)」です。

 

PrainGoogleAdSense

PrainGoogleAdSense

-Cocos2d-x
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

三平方の定理

ゲーム制作 Cocos2d-x関連 第7回 「ボールとドロップとの衝突検知と跳ね返り」

今回はボールとドロップとの衝突検知を実装してきます。   前回はボールと画面端との衝突判定と跳ね返りのプログラムを行いました。   画面端であれば上下左右の4通りの検知を行えばよか …

cocos2dx

Cocos2d-x カスタムイベントを利用してソースコードの可読性をあげる

こんにちは、akiです。 この記事ではカスタムイベントの使い方について説明します。   カスタムイベントとは、ユーザが自由に処理を記述できるイベントのことです。イベントを発行するディスパッチ …

ゲーム制作 Cocos2d-x関連 最終回 「勝利演出、敗北演出の追加」

勝利演出、敗北演出を実装していきます。今回で最終回です!     仕様の検討 1.バトル中、プレイヤーのHPが0になった場合 → 勝利演出 → 勝利演出中に画面をタップするとスター …

ゲーム制作 Cocos2d-x関連 第16回 「パズル要素を実装する」

ちょっと待って、パズル要素はどこなの???   ・・・ですよね・・・「パズル&ストライク」ですもんね・・・   それではパズル要素の仕様を決めていきましょう。   仕様の …

ゲーム制作 Prain プレイン Cocos2d-x

ゲーム制作 Cocos2d-x関連 第17回 「タイトル画面の作成と画面遷移」

  この回ではタイトル画面と画面遷移を実装していきます。画面遷移が実装できれば、リッチなゲームを作りやすくなると思います。       仕様の検討 追加する画面 …