使用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 ("登录失败"); } } }}新闻热点
疑难解答