美文网首页
Restful in Unity

Restful in Unity

作者: 你知道和不知道的我 | 来源:发表于2018-01-23 20:06 被阅读0次

    参考文章:https://utf-8.live/default/unity-restful-api.html

                    http://www.xuanyusong.com/archives/4367

    Unity 端基本都是通过调用后端 Http 接口解析 Json 字符串方式跟后端交互,大多使用封装好的 WWW 类或者 WWWform 调用后端接口,使用起来非常简单方便,但是 WWW 直接调用 API 默认发起的请求方法是 GET 请求。

    如果我们传输的是一个 json 字符串:

    // Get the latest webcam shot from outside "Friday's" in Times Square

    using UnityEngine;

    using System.Collections;

    public class ExampleClass : MonoBehaviour {

        public string url = "https://api.com/save";

        IEnumerator Start() {

            // 创建一个字典设置 key value

            Dictionary Headers = new Dictionary (); 

            Headers.Add ("Content-Type", "application/json");

            // 请求的Json数据

            Dictionary Dict = new Dictionary ();

            Dict ["name"] = "ben";

            Dict ["age"] = "18";

            string data = Json.Serialize (Dict);

            // 转字节

            byte[] data; 

            data = System.Text.UTF8Encoding.UTF8.GetBytes (data);

            WWW www = new WWW (url, data, Headers);

            yield return www;

            // TODO DO SOMETHING

        }

    }

    Unity自己的json序列化是不支持字典格式,但通过使用Json.net库,通过http://www.newtonsoft.com/json下载,并将bin/net20/Newtonsoft.Json.dll 拖入unity工程即可实现序列化。

    字典定义:

    Dictionary<string,string> a=new Dictionary<string,string>();

    Dictionary里的每一元素都由keyvalue组成,key和value,通过一个key读取一个value。

    实现方式:using Newtonsoft.Json

    public class Test : MonoBehaviour {

    void Start()

    {

    Product product = new Product();

    product.dic ["字典key"] = "字典Value";

    product.name="我是雨松MOMO";

    string json = JsonConvert.SerializeObject(product);

    Product m = JsonConvert.DeserializeObject(json);

    Debug.Log (json);

    Debug.Log (m.name);

    }

    public class Product

    {

    public string name;

    public Dictionary dic=new Dictionary();

    }

    }

    相关文章

      网友评论

          本文标题:Restful in Unity

          本文链接:https://www.haomeiwen.com/subject/szchaxtx.html