【问题标题】:RestSharp giving me BadRequest when calling it from Repository当从存储库调用它时,RestSharp 给了我 BadRequest
【发布时间】:2021-06-04 05:46:12
【问题描述】:

我在尝试从存储库发出 RestRequest 时遇到了这个问题,并且从 API 控制器发出的完全相同的请求正常。

   public IRestResponse SendOrderToBringg(string json)
    {
        RestClient client = new RestClient(_configuration.GetValue<string>("EndPoint:EnvioPedidos"));

        RestRequest request = new RestRequest();

        request.AddParameter("application/json", json, ParameterType.RequestBody);

        var response = client.Post(request);

        return response;
    }

当从存储库中生成它时,我得到了这个响应:

错误的请求 - 无效的 URL


HTTP 错误 400。请求 URL 无效。

我可能缺少什么?

谢谢

【问题讨论】:

  • 您是否调试过 _configuration.GetValue("EndPoint:EnvioPedidos") 在失败请求中返回的内容?
  • 是的,我做到了,它给了我正确的 url,就像我从控制器请求它时一样
  • 我认为没有足够的信息来调试它。我会使用 Fiddler 之类的工具来查看有效的 HTTP 请求和失败的 HTTP 请求,这样我就可以看到两者之间有什么不同。
  • @PedroLeal HTTP 请求有一些不同。如果请求完全相同,您将不会有不同的行为。如前所述,请用 fiddler 嗅探这两个请求并在此处发布结果。
  • 这就像 Fiddler 甚至无法捕获 400 的请求,就像它甚至没有被发出一样。我能找到返回 200 的那个,错误的那个

标签: c# api .net-core restsharp


【解决方案1】:

好吧,我通过切换到 HttpClient 而不是 RestSharp 解决了这个问题,现在它工作得很好。所以如果你像我一样被困在这里,你会尝试一下。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-18
    • 1970-01-01
    • 2012-07-29
    • 1970-01-01
    相关资源
    最近更新 更多