通过统一从服务器获取数据

时间:2016-08-02 15:37:29

标签: c# unity3d server

我使用统一,我想接收存储在在线数据库中的最后一个内部版本号

我如何接收搜索到的数据并发现我必须使用www来做,但我不知道如何。

我用来创建WWWForm并添加字段并将数据添加到其中,然后将其发送到将数据发布到服务器

是否可以在发送时接收像wwwform这样的数据?

任何关于通过统一发送/接收数据的文件也会很好

2 个答案:

答案 0 :(得分:3)

您可以在(C#+ Unity)中实现数据发送/接收功能。其Co-routineWWWWWWForm

下面给出的演示:

获取请求:

 using UnityEngine;

 public class GetRequestDEmo : MonoBehaviour {

     void Start () {
         string url = "http://exampleWeb.com/myServerScript.php?var1=value2&var2=value2";
         WWW www = new WWW(url);
         StartCoroutine(WaitForRequest(www));
     }

     IEnumerator WaitForRequest(WWW www)
     {
         yield return www;

         // check for errors
         if (www.error == null)
         {
             Debug.Log("WWW Result!: " + www.text);// contains all the data sent from the server
         } else {
             Debug.Log("WWW Error: "+ www.error);
         }    
     }
 }

对于张贴申请:

public class PostRequestDemo : MonoBehaviour {

     void Start () {

         string url = "http://exampleWeb.com/myServerscript.php";

         WWWForm form = new WWWForm();
         form.AddField("var1", "value1");
         form.AddField("var2", "value2");
         WWW www = new WWW(url, form);

         StartCoroutine(WaitForRequest(www));
     }

     IEnumerator WaitForRequest(WWW www)
     {
         yield return www

         // check for errors
         if (www.error == null)
         {
             Debug.Log("WWW Ok!: " + www.text);// contains all the data sent from the server
         } else {
             Debug.Log("WWW Error: "+ www.error);
         }    
     }    
 }

如果您还需要服务器端代码(在PHP中),我会向您推荐this Unity Wiki code或者您也可以观看this Video.

答案 1 :(得分:0)

我可以推荐您使用另一种方法,因此miradb只是基于json的数据库服务器和受支持的统一引擎,您可以尝试一下。

Mira-DB安装(nodejs)

www.npmjs.com/package/mira-db

Unity示例项目

https://github.com/Nodeclient