使用unity 5.3版本以上 自帶Json解析器與后臺進行登錄驗證。
using UnityEngine;using System.Collections;public class UserInfo{ //用戶信息 由賬號 密碼 驗證碼 組成 public string userAccount; public string userPassWord; public string secureCode; public string backInfo;//這個變量用來保存服務器返回的消息}public class GobleController : MonoBehaviour { //后端提供的POST請求地址 string postUrl="www.baidu.com...."; // Use this for initialization void Start () { } //點擊登錄按鈕的方法 public void LogInClick() { //將賬號密碼信息 填入表單 WWWForm userInfoForm = new WWWForm (); userInfoForm.AddField ("userAccount", "MaYun001"); userInfoForm.AddField ("userPassword", "8888888"); //啟用協同程序進行登錄 StartCoroutine (SendPost (postUrl,userInfoForm )); } // Update is called once per frame void Update () { } /// <summary> /// 這個發送POST請求的方法 /// 參數1:后臺給的URL接口 /// 參數2:發送的表單數據 /// </summary> /// <returns>The register.</returns> /// <param name="url">URL.</param> /// <param name="_form">Form.</param> public IEnumerator SendPost(string url,WWWForm _wform) { //將參數用一個WWW對象保存起來 WWW postData = new WWW (url, _wform); //向后臺發送數據,并等待后臺返回的數據。 yield return postData; //和后臺協商好,返回的消息也是在發回的消息是UserInfo類型 并將返回消息保存在backInfo上 //將后臺返回的數據JSON格式進行解析 解析成UuserInfo對象 UserInfo myUserInfo = JsonUtility.FromJson<UserInfo >(postData.text ); // 對返回結果進行判斷 if (postData.error != null) { Debug.Log ("返回的數據錯誤不為空!說明返回的消息有錯"); } else { //將返回消息的文本打印出來 Debug.Log (postData.text ); if (myUserInfo.backInfo == "登錄成功") { Debug.Log ("登錄成功"); } else if (myUserInfo.backInfo =="登錄失敗") { Debug.Log ("登錄失敗"); } } }}新聞熱點
疑難解答