【问题标题】:using Rest client and getting statuscode 406 not acceptable使用 Rest 客户端并获取状态码 406 不可接受
【发布时间】:2020-03-04 02:45:56
【问题描述】:

我正在使用 RestClient 并将请求重定向到外部 REST Web 服务 (java) 作为 RestRequest。我收到 HTTP 状态码“不可接受”,并且 repsonse.content 类似于“资源无法显示,因为您的浏览器不接受文件扩展名。” 操作成功,但无法获得所需的响应,这只是一个字符串值。

下面是代码sn-p:

 var client = new RestClient();             
 client.BaseUrl = JavaWSURI;
 var request = new RestRequest();
 //request.AddHeader("Content-Length", int.MaxValue.ToString());
 //request.AddHeader("Content-Type", "text/html; charset=utf-8");
 // jsonD is JSON input object
 request.AddParameter("application/json", jsonD, ParameterType.RequestBody);
 request.Method = Method.POST;                
 request.RequestFormat = DataFormat.Json;

 // The server's Rest method will probably return something 
 var response = client.Execute(request) as RestResponse;

【问题讨论】:

    标签: c# rest rest-client


    【解决方案1】:

    从错误消息看来,您可能需要在请求中添加“Accept”标头

    【讨论】:

      【解决方案2】:

      添加Accept请求头如下:

      request.AddHeader("Accept", 
                    "text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8");
      

      请注意,您可能需要根据您的内容更改该值。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-31
        • 2018-07-22
        • 2019-12-15
        • 1970-01-01
        • 2019-04-30
        • 1970-01-01
        • 1970-01-01
        • 2016-04-22
        相关资源
        最近更新 更多