示例#1
0
        //public (int Status, List<ResponseDetail> Detail) RequestValidate(Request request)
        //{

        //    string url = _apiBasestring + "/v1/InputRequest";

        //    var content = JsonConvert.SerializeObject(request);
        //    var reqContent = new StringContent(content, Encoding.Default, "application/json");
        //    var httpResponse = _client.PostAsync(url, reqContent).Result;
        //    //var httpResponse = _client.PostAsync(url, content).Result;

        //    if (!httpResponse.IsSuccessStatusCode)
        //    {
        //        throw new Exception("Cannot add a todo task");
        //    }

        //    var respContent = httpResponse.Content.ReadAsStringAsync().Result;
        //    var createdTask = JsonConvert.DeserializeObject<RequestValid>(respContent);
        //    return (createdTask.Status,createdTask.Details);
        //}
        public (int Status, List <ResponseDetail> Detail) RequestValidate(Request request)
        {
            var    requestvalid = new RequestValid();
            string url          = _apiBasestring + "/v1/InputRequest";

            using (var client = _clientFactory.CreateClient())
            {
                var content = JsonConvert.SerializeObject(request);
                client.DefaultRequestHeaders.Add("Authorization", "Bearer " + Constants.ApiToken);
                var reqContent   = new StringContent(content, Encoding.Default, "application/json");
                var httpResponse = client.PostAsync(url, reqContent).Result;
                if (!httpResponse.IsSuccessStatusCode && "Unauthorized" == httpResponse.StatusCode.ToString())
                {
                    AuthInfo = UserLoginRequest(User1);
                    (requestvalid.Status, requestvalid.Details) = RequestValidate(request);
                }
                else
                {
                    var respContent = httpResponse.Content.ReadAsStringAsync().Result;
                    requestvalid = JsonConvert.DeserializeObject <RequestValid>(respContent);
                }
            }



            return(requestvalid.Status, requestvalid.Details);
        }
示例#2
0
 public InputRequestController(IWebAddressVerification web, ILogger <InputRequestController> logger)
 {
     _logger = logger;
     _webAddressVerification = web;
     RequestValid            = new RequestValid();
 }