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("不支持的方法"); }
public Task <TResponse> RequestAsync <TResponse>(ApiRequestBase <TResponse> request) where TResponse : ApiResponseBase { return(_builderFactory.Execute <TResponse>(request)); }
public TResponse Request <TResponse>(ApiRequestBase <TResponse> request) where TResponse : ApiResponseBase => RequestAsync(request).GetAwaiter().GetResult();