/// <summary> /// 訪問WebAPI /// </summary> /// <param name="postData"></param> /// <param name="action"></param> /// <returns></returns> private async Task <HttpResponseMessage> GetLiveReport(LiveParameters postData, string action) { try { using (HttpClient client = new HttpClient()) { //Timeout時間5秒 client.Timeout = new System.TimeSpan(0, 0, TimeOut); // 指定 authorization header client.DefaultRequestHeaders.Add("authorization", "token {api token}"); // 準備寫入的 data //BeforeParameters postData = new BeforeParameters() { IdentityId = "test", UserId = "686026" }; // 將 data 轉為 json string json = JsonConvert.SerializeObject(postData); // 將轉為 string 的 json 依編碼並指定 content type 存為 httpcontent HttpContent contentPost = new StringContent(json, Encoding.UTF8, "application/json"); // 發出 post 並取得結果 // ReportUri = "http://localhost:19487/api/ReportAfter/"; HttpResponseMessage response = client.PostAsync(ReportUri + action, contentPost).Result; // 將回應結果內容取出並轉為 string 再透過 linqpad 輸出 //result = response.Content.ReadAsStringAsync().Result; //var result = JsonConvert.DeserializeObject<AgencyHeader>(sss.Result); return(response); } } catch (Exception ex) { return(new HttpResponseMessage(System.Net.HttpStatusCode.BadRequest)); } }
/// <summary> /// 直播後台-主播報表 /// </summary> /// <param name="afterParameters"></param> /// <returns></returns> public return_anchor_tip_record GetAnchorsReport(LiveParameters liveParameters) { var response = GetLiveReport(liveParameters, "GetAnchorsReport"); var dataStr = response.Result.Content.ReadAsStringAsync().Result; var backData = JsonConvert.DeserializeObject <AnchorListReport>(dataStr); //轉換前端Model return_anchor_tip_record reportLotterys = ConvertReport.ConvertReportAnchorsModel(backData); return(reportLotterys); }
/// <summary> /// This method creates a new live event for the authenticated user. /// </summary> /// <param name="user_id"></param> /// <param name="parameters"></param> /// <returns></returns> public Task <RestResult <LiveEventRecurring> > CreateALiveEvent(int user_id, LiveParameters parameters) => RootAuthorization() .Command($"/users/{user_id}/live_events") .Payload(parameters) .PostAsync <LiveEventRecurring>();