標籤:style blog http color os io for art
Unity的www主要支援HTTP中的GET和POST方式,GET方式會將請求附加到URL後,POST方式則是通過FORM的形式提交。
以下為Unity用戶端的資訊:
using UnityEngine;using System.Collections;public class WebManger : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { } string m_string="Nothing"; void OnGUI() { GUI.BeginGroup(new Rect(300,Screen.height*0.5f-1,500,200),""); GUI.Label(new Rect(10,10,300,30),m_string); if(GUI.Button(new Rect(10,50,100,30),"Get Data")) { StartCoroutine(IGetData()); } if(GUI.Button(new Rect(10,90,100,30),"Post Data")) { StartCoroutine(IPostData()); } GUI.EndGroup(); } IEnumerator IGetData() { WWW www=new WWW("http://localhost:12063/Default.aspx?name=hometown1986"); yield return www; //等待WEB伺服器的反應 if(www.error!=null) { m_string=www.error; yield return null; } m_string=www.text; } IEnumerator IPostData() { System.Collections.Hashtable headers=new Hashtable(); headers.Add("Content-Type","application/x-www-form-urlencoded"); //儲存HTTP的前序 //把字串儲存為BYTE數組 string data="pwd=chinajoy"; byte[] bt=System.Text.UTF8Encoding.UTF8.GetBytes(data); WWW www=new WWW("http://localhost:12063/Default.aspx",bt,headers); yield return www; if(www.error!=null) { m_string=www.error; yield return null; } m_string=www.text; }}
下面是C#伺服器端的處理:
public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //Get if (Request.QueryString["name"] != null) { Response.Write("你傳過來的name:" + Request.QueryString["name"].ToString()); } //Post Response.Write("密碼為:"+Request.Form["pwd"]); Response.End(); } }