using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.IO;
|
using System.Net;
|
using System.Text;
|
using WIDESEA.Core.Utilities;
|
using WIDESEA_Entity.CustomModels.RGVModel;
|
|
namespace WIDESEA.Core.Utilities
|
{
|
public class HttpHelper<T>
|
{
|
public static WebResponseContent GetHttpRequestData(T postData, string address)
|
{
|
WebResponseContent content = new WebResponseContent();
|
try
|
{
|
string tmp = JsonConvert.SerializeObject(postData);
|
byte[] param = Encoding.UTF8.GetBytes(tmp);
|
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
|
request.Method = "POST";
|
request.ContentType = "application/json";
|
request.GetRequestStream().Write(param, 0, param.Length);
|
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
|
{
|
Stream stream = response.GetResponseStream();
|
StreamReader streamReader = new StreamReader(stream);
|
string webResponse = streamReader.ReadToEnd();
|
content = JsonConvert.DeserializeObject<WebResponseContent>(webResponse);
|
}
|
}
|
catch (Exception ex)
|
{
|
content.Status = false;
|
content.Message = ex.Message;
|
}
|
return content;
|
}
|
|
public static WebResponseContent GetHttpRequestData(string address)
|
{
|
WebResponseContent content = new WebResponseContent();
|
try
|
{
|
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
|
request.Method = "GET";
|
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
|
{
|
Stream stream = response.GetResponseStream();
|
StreamReader streamReader = new StreamReader(stream);
|
string webResponse = streamReader.ReadToEnd();
|
content = JsonConvert.DeserializeObject<WebResponseContent>(webResponse);
|
}
|
}
|
catch (Exception ex)
|
{
|
content.Status = false;
|
content.Message = ex.Message;
|
}
|
return content;
|
}
|
|
|
public static WebResponseContent PostHttpRequestDataToRGV(T postData, string address)
|
{
|
WebResponseContent content = new WebResponseContent();
|
try
|
{
|
string tmp = JsonConvert.SerializeObject(postData);
|
byte[] param = Encoding.UTF8.GetBytes(tmp);
|
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
|
request.Method = "POST";
|
request.ContentType = "application/json";
|
request.GetRequestStream().Write(param, 0, param.Length);
|
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
|
{
|
Stream stream = response.GetResponseStream();
|
StreamReader streamReader = new StreamReader(stream);
|
string webResponse = streamReader.ReadToEnd();
|
|
if (address.Contains("getRgvInfos"))
|
{
|
RgvDeviceStatusModel rgvData = JsonConvert.DeserializeObject<RgvDeviceStatusModel>(webResponse);
|
content.OK();
|
content.Data = rgvData;
|
}
|
|
}
|
}
|
catch (Exception ex)
|
{
|
content.Status = false;
|
content.Message = ex.Message;
|
}
|
return content;
|
}
|
}
|
}
|