1. 程式人生 > >HTTP 請求工具類

HTTP 請求工具類

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

public class HttpClient : MonoBehaviour
{

    // Use this for initialization
    void Start()
    {


    }

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

    }

    public void requestGet()
    {
        //GET請求
        StartCoroutine(GET("http://baidu.com/"));
    }

    //登入
    public void requestPost()
    {
        //登入請求 POST 把引數寫在字典用 通過www類來請求
        Dictionary<string, string> dic = new Dictionary<string, string>();
        //引數
        dic.Add("machine-id", Utils.getDeviceUUID());

        StartCoroutine(POST("http://sbuu.danwi.me/dsp_api/display/isActive.do", dic));
    }

    //POST請求
    IEnumerator POST(string url, Dictionary<string, string> post)
    {
        WWWForm form = new WWWForm();
        Dictionary<string, string> headers = new Dictionary<string, string>();
        headers["machine-id"] = Utils.getDeviceUUID();
        //foreach (KeyValuePair<string, string> post_arg in post)
        //{
        //    form.AddField(post_arg.Key, post_arg.Value);
        //}
        byte[] bytes = new byte[10];
        WWW www = new WWW(url, bytes, headers);
        yield return www;

        if (www.error != null)
        {
            //POST請求失敗
            Debug.Log("error is :" + www.error);

        }
        else
        {
            //POST請求成功
            Debug.Log("request ok : " + www.text);
        }
    }

    //POST請求
    IEnumerator POSTs(string url, Dictionary<string, string> post)
    {
        WWWForm form = new WWWForm();

        foreach (KeyValuePair<string, string> post_arg in post)
        {
            form.AddField(post_arg.Key, post_arg.Value);
        }
        WWW www = new WWW(url, form);
        yield return www;

        if (www.error != null)
        {
            //POST請求失敗
            Debug.Log("error is :" + www.error);

        }
        else
        {
            //POST請求成功
            Debug.Log("request ok : " + www.text);
        }
    }


    //GET請求
    IEnumerator GET(string url)
    {

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

        if (www.error != null)
        {
            //GET請求失敗
            Debug.Log("error is :" + www.error);

        }
        else
        {
            //GET請求成功
            Debug.Log("request ok : " + www.text);
        }
    }

}