This commit is contained in:
kyh
2024-08-29 11:02:17 +09:00
parent 4372818048
commit 081c666c98
4 changed files with 173 additions and 11 deletions

View File

@@ -23,6 +23,7 @@ using System.Runtime.InteropServices;
using DevExpress.XtraEditors.Filtering;
using DevExpress.XtraExport.Xls;
using DevExpress.Utils.Filtering.Internal;
using System.Collections.Specialized;
namespace BitgetAPI.WebService
{
@@ -40,7 +41,7 @@ namespace BitgetAPI.WebService
public static object SendWebServer(CommonProperty.ExchangeWebReqType exchangeWebReqType, string url = "",
MarketCandleDataList marketCandleDataList = null, CommonProperty.MCandleTimeType interval = MCandleTimeType.M1,
string postData = "", string subUri = "")
string postData = "", string subUri = "", NameValueCollection headers = null)
{
object returnJsonData = null;
@@ -56,6 +57,8 @@ namespace BitgetAPI.WebService
// 웹 전송 타입 지정
var webConType = CommonProperty.WebConnectionType.GET;
if(postData.Length > 0) webConType = CommonProperty.WebConnectionType.POST;
// 1. WebRequest 객체 형성 및 HttpWebRequest 로 형변환
// 2. 거래소에 따른 헤더 파일 처리(POST 일 경우만 지정함)
@@ -82,13 +85,13 @@ namespace BitgetAPI.WebService
break;
case CommonProperty.ExchangeWebReqType.BitgetCandleStick_Future:
wReq = (HttpWebRequest)WebRequest.Create(new Uri(CommonProperty.BitgetURL_MarketCandle_Future));
break;
#endregion
break;
#endregion
}
}
else wReq = (HttpWebRequest)WebRequest.Create(new Uri(url));
// GET, POST 구분
switch (webConType)
{
@@ -105,6 +108,12 @@ namespace BitgetAPI.WebService
break;
}
if (headers != null)
{
wReq.Headers.Add(headers);
wReq.ContentType = "application/json";
}
using (var wRes = (HttpWebResponse)wReq.GetResponse())
{
var respPostStream = wRes.GetResponseStream();
@@ -144,7 +153,6 @@ namespace BitgetAPI.WebService
return commonProperty.marketInfoList;
}
break;
case CommonProperty.ExchangeWebReqType.BitgetCandleStick_Coin:
{
@@ -251,6 +259,15 @@ namespace BitgetAPI.WebService
}
}
break;
case ExchangeWebReqType.BitgetAccountList_Future:
{
var datalist = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult);
return JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(datalist["data"]?.ToString());
}
case ExchangeWebReqType.BitgetOrder_Future:
{
return JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult);
}
#endregion
}
}