unity简单封装的网络请求

来源:互联网 发布:公路基础数据库系统 编辑:程序博客网 时间:2024/06/05 04:56

利用委托回调简单封装的unity网络请求

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;//引用三方Json解析using LitJson;public class GameControl : MonoBehaviour {    //声明代理    public delegate void RequestFinish(string json);    //问题的Text    public Text QText;    //名字的Text    public Text AText;    //搜索出来的结果图片    public RawImage AImage;    //结果背景    public GameObject ABG;    //保存三个url    private string yesURL;    private string noURL;    private string nullURL;    // Use this for initialization    void Start () {        StartCoroutine(Request("http://renlifang.msra.cn/Q20/api/gamestart.ashx?alias=WP7&stamp=366",(string json) => {            JsonData jd = JsonMapper.ToObject(json);            string qurl = jd["starturl"].ToString();            StartCoroutine(Request(qurl,RequestQuess));        }));    }    //提问问题的回调    void RequestQuess(string json)    {        JsonData jd = JsonMapper.ToObject(json);        if (jd["step"].ToString() == "1")        {            QText.text = jd["qtext"].ToString();            yesURL = jd["yesurl"].ToString();            noURL = jd["nourl"].ToString();            nullURL = jd["notsureurl"].ToString();        }        else        {            ABG.SetActive(true);            AText.text = "您心里想的是" + jd["guessname"].ToString();            StartCoroutine(RequestImage("http://renlifang.msra.cn/portrait.aspx?id=" + jd["pid"].ToString()));        }    }    IEnumerator RequestImage(string url)    {        WWW www = new WWW(url);        yield return www;        AImage.texture = www.texture;    }    public void YesButton()    {        StartCoroutine(Request(yesURL,RequestQuess));    }    public void NoButton()    {        StartCoroutine(Request(noURL, RequestQuess));    }    public void NullButton()    {        StartCoroutine(Request(nullURL, RequestQuess));    }    IEnumerator Request(string url , RequestFinish finish)    {        WWW www = new WWW(url);        yield return www;        finish(www.text);    }}
原创粉丝点击