よりみちアプリ開発

Unityゲームアプリ開発、猫、映画、ゲーム、日々🍀

UnityでREST API通信 ① GET通信をおこなう

今回は、UnityでAPI通信を行う製作メモです。
APIはLaravelで製作し、RESTfulな設計にしてます。

まずは、GET通信でデータベースのデータを取得し、ローカルに保存するところまでやっていきたいと思います。

Unityが提供してる通信APIは、 wwwUnityWebRequestです。

wwwは HTTPメソッドがGETとPOSTのみ。
UnityWebRequestは、+PUTDELETEも使えるとのことで、 wwwはシンプルにWebにアクセスするときに使うようです。

コードは以下のような感じです↓

using System.Collections;
using UnityEngine;
//これが必要になります
using UnityEngine.Networking;

public class HogeController : MonoBehaviour
{

  string webURL = "http://~";

  public void Start()
    {
        //通信はコルーチンを使って行います。
        StartCoroutine(GetData());       
    }

    IEnumerator GetData(){

        UnityWebRequest request = UnityWebRequest.Get(webURL);
        yield return request.SendWebRequest();

        //エラー処理
        if(request.isNetworkError){
            Debug.Log(request.error);
        }else{
            //リクエストが成功した時
            if(request.responseCode == 200){
                /*
               ここに処理を書く
               */
            }
        }
    }

サーバーとGETで通信させることができました。
①は以上です。
②では、データベースの中身をJSON形式で取得します。

わかりづらい点がありましたらお気軽にきいてください(^-^)