Get and Post(Unity3D开发之六)

时间:2022-01-11 20:10:55

猴子原创,欢迎转载。转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢!

原文地址: http://www.cocos2dev.com/?p=565

unity3d中的www直接提供了web请求服务。使用也非常简单。

using UnityEngine;
using System.Collections.Generic;
using System.Collections;

public class WebManager : MonoBehaviour {

	// Use this for initialization
	void Start ()
	{
		// Request by get
		StartCoroutine(Get("http://www.cocos2dev.com/"));

		// Request by post
		Dictionary<string, string> dic = new Dictionary<string, string> ();
		dic.Add("userId", "6001345679887");
		dic.Add("eventId", "10018");
		StartCoroutine(Post("http://192.168.1.102/api.php", dic));
	}

	// Update is called once per frame
	void Update ()
	{

	}

	// Post
	IEnumerator Post(string url, Dictionary<string, string>postData)
	{
		WWWForm form = new WWWForm();
		foreach(KeyValuePair<string, string> postArg in postData)
		{
			form.AddField(postArg.Key, postArg.Value);
		}

		WWW www = new WWW(url, form);
		yield return www;

		if (www.error != null)
		{
			Debug.Log("error is :"+ www.error);
		}
		else
		{
			Debug.Log("request result :" + www.text);
		}
	}

	// Get
	IEnumerator Get(string url)
	{
		WWW www = new WWW (url);
		yield return www;

		if (www.error != null)
		{
			Debug.Log("error is :"+ www.error);
		}
		else
		{
			Debug.Log("request result :" + www.text);
		}
	}
}