首页 > 解决方案 > API HTTP 客户端返回数据

问题描述

我正在研究这个将使用主体部分调用 API 的辅助方法。我在模型中传递 url 和数据。然后我 SerializeObject 模型,但我不确定要返回什么我收到关于response.Content未找到的错误消息。

 public static async System.Threading.Tasks.Task<HttpResponse> HttpClientHandlerAsync(string url, object model)
    {
        var fullUrl = apiUrl + url;
        
        var json = JsonConvert.SerializeObject(model);
        var data = new StringContent(json, Encoding.UTF8, "application/json");
        Client.DefaultRequestHeaders.Add("Accept", "*/*");
        Client.DefaultRequestHeaders.Authorization
                     = new AuthenticationHeaderValue("Bearer", "token");
        var response = await Client.PostAsync(fullUrl, data);

        return response;
        
    }

标签: c#asp.net-mvc

解决方案


我不确定要返回什么我收到有关响应的错误消息。找不到内容。

设置断点并将鼠标悬停在响应上以查看状态代码。您可能会遇到 500 服务器错误、身份验证错误等。

此外

using (var client = new HttpClient())

不要这样做。它不像你想象的那样工作,它会饿死你的连接池并最终抛出一个异常。您需要在某处定义 HttpClient 并继续重用相同的实例。

如果您关心,请进一步阅读https://aspnetmonsters.com/2016/08/2016-08-27-httpclientwrong/


推荐阅读