赞
踩
打包发布后的webgl需要使用GET/POST获取到服务器数据,对获取到的服务器数据进行解析
此实现方法需要使用UnityWebRequest类(用于与Web服务器通信,处理HTTP与Web服务器通信流程),在脚本中引用 using UnityEngine.Networking;命名空间即可使用UnityWebRequest类。如果获取到的数据类型是json时,需要对json数据进行解析,这里使用LitJSON.dll,获取链接:https://pan.baidu.com/s/1MCr36hQd5PzhXiM6UdqLWQ 提取码:sj5i
- IEnumerator GetData()
- {
- yield return new WaitForSeconds(10);//多久获取一次数据,这里10秒获取一次
- UnityWebRequest unityWebRequest = UnityWebRequest.Get("你的接口地址");
- unityWebRequest.SetRequestHeader("Content-Type", "application/json;charset=utf-8");
- unityWebRequest.downloadHandler = new DownloadHandlerBuffer();
- yield return unityWebRequest.SendWebRequest();
- if (unityWebRequest.isDone)
- {
- string result = unityWebRequest.downloadHandler.text;
- Debug.Log(result);//调试使用,不出错时可删除
-
- //当数据格式为json时
- JsonData jsdata = JsonMapper.ToObject(result);//解析获取到的Json数据
- Data.name = jsdata["result"]["name"].ToString();//Data为你需要存储解析数据的类,自己命名即可
- //当获取到的数据为列表时,可使用双重for循环进行解析,数据如:
- /* {
- "success": true,
- "message": "操作成功!",
- "code": 200,
- "result": {
- "List":{
- "1":[{"age":10,"name":null},
- {"age":12,"name":null},
- {"age":13,"name":null},
- ],
- "2":[{"age":10,"name":null},
- {"age":12,"name":null},
- {"age":13,"name":null},
- ],
- ......
- }
- }
- }*/
- //解析方法:
- List<int> age = new List<int>(6);//知道数据数量情况下。建议直接声明List大小
- for(int i=0;i<2;i++){
- for(int j=0;j<3;j++){
- age.Add(int.Parse(jsdata["result"][i][j]["age"].ToString()));
- }
- }
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。