public async Task <TResponse> Execute <TResponse>(ApiRequestBase <TResponse> request) where TResponse : ApiResponseBase
        {
            if (request.HttpMethod == HttpMethod.Post)
            {
                return(await HttpRequestFactory.Post(request.Url, request.GetPostContent(), request.Header, true).ContentToType <TResponse>());
            }

            if (request.HttpMethod == HttpMethod.Put)
            {
                return(await HttpRequestFactory.Put(request.Url, request.GetPostContent(), request.Header).ContentToType <TResponse>());
            }

            if (request.HttpMethod == HttpMethod.Get)
            {
                return(await HttpRequestFactory.Get(request.Url, request.Header, true).ContentToType <TResponse>());
            }

            if (request.HttpMethod == HttpMethod.Delete)
            {
                return(await HttpRequestFactory.Delete(request.Url, request.Header).ContentToType <TResponse>());
            }

            throw new NotSupportedException("不支持的方法");
        }
Esempio n. 2
0
 public Task <TResponse> RequestAsync <TResponse>(ApiRequestBase <TResponse> request) where TResponse : ApiResponseBase
 {
     return(_builderFactory.Execute <TResponse>(request));
 }
Esempio n. 3
0
 public TResponse Request <TResponse>(ApiRequestBase <TResponse> request) where TResponse : ApiResponseBase =>
 RequestAsync(request).GetAwaiter().GetResult();