コード例 #1
0
ファイル: LoginController.cs プロジェクト: underfisk/uHttp
    /// <summary>
    /// Requests a synchronized http request to a determinated host and send the data in $_POST
    /// </summary>
    public void SyncRequest()
    {
        var request = new HttpRequest();
        var form    = new HttpForm();

        form.AddField("username", userField.text);
        form.AddField("password", pwdField.text);
        form.AddField("token", db.Token);
        request.Post(db.HttpLinks[0], form);

        Debug.Log("Request Headers : " + request.headers);
        Debug.Log("Request post data :" + form.ToString());

        if (request.isDone)
        {
            if (!request.isError || request.statusCode == System.Net.HttpStatusCode.OK)
            {
                ResponseTarget.text = "Success Response: " + request.ContentResponse;
                Debug.Log(request.ContentResponse);
            }
            else
            {
                ResponseTarget.text  = "Response: " + request.statusCode;
                ResponseTarget.color = Color.red;
                Debug.Log("status code error : " + request.statusCode);
            }
        }
    }
コード例 #2
0
ファイル: HttpRequest.cs プロジェクト: underfisk/uHttp
    /// <summary>
    /// Request a pure HttpRequest synchronized which do not return but his data may be accessed on the created instance
    /// </summary>
    /// <param name="url"></param>
    /// <param name="data"></param>
    public void Post(string url, HttpForm data)
    {
        try
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
            request.ContentType = "application/x-www-form-urlencoded";
            request.Method      = "POST";

            byte[] bytes = System.Text.Encoding.ASCII.GetBytes(data.ToString());
            request.ContentLength = bytes.Length;

            Stream os = request.GetRequestStream();
            os.Write(bytes, 0, bytes.Length); //Push it out there
            os.Close();
            HttpWebResponse resp = (HttpWebResponse)request.GetResponse();

            if (resp == null)
            {
                ContentResponse = String.Empty;
            }

            StreamReader sr = new StreamReader(resp.GetResponseStream());

            //Releases the resources of the response
            resp.Close();

            //The request was successfull
            if (resp.StatusCode == HttpStatusCode.OK)
            {
                //Set instance data
                ContentResponse = sr.ReadToEnd().Trim();
                headers         = resp.Headers.ToString();
                length          = resp.ContentLength;
                this.url        = url;
                this.bytes      = bytes;
                isJson          = JsonHelper.isJson(ContentResponse);
                statusCode      = resp.StatusCode;
                isError         = false;
            }
        }
        catch (WebException e)
        {
            Debug.Log("\r Web Exception :  " + e.Status);
            isError = true;
        }
        catch (Exception e)
        {
            Debug.Log("\r The following exception was raised : " + e.Message);
            isError = true;
        }
        finally
        {
            isDone = true;
        }
    }