繁体   English   中英

RestSharp 在 GET 调用上抛出错误请求,但缺少响应正文

[英]RestSharp is throwing a bad request on a GET call, but is missing response body

我正在对外部 REST API 进行 GET 调用。我输入的参数不正确,并收到 HttpRequestException。 捕获异常时,它返回的唯一详细信息是:

请求失败,状态码为 BadRequest

使用 Fiddler 监控流量时,我可以看到服务器在正文中返回一条 json 消息,解释调用失败的原因。

无论如何可以从 RestSharp 访问此消息?

我正在使用 .net 6 和 RestSharp 版本 108.0.2

您必须将 RestClientOptions 中的ThrowOnAnyError RestClientOptionsfalse

private async Task<T?> SendRequest<T>()
        {
            string url = "your request url";
            var options = new RestClientOptions(url)
            {
                ThrowOnAnyError = false,
                MaxTimeout = 6000
            };
            var client = new RestClient(options);
            var request = new RestRequest().AddHeader("Content-Type", "application/json");
            request.Method = Method.Post;
            var response = await client.ExecuteAsync<T>(request);
            return response.Data;
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM