我在尝试使用 Rest Sharp 进行 POST 时遇到问题。我正在尝试调用不完全符合现代标准的 Web 服务,并且我需要能够在我的帖子正文中发布请求 XML。
如果我只是对 RestRequest 对象执行 request.AddBody(xmlObject) ,则会将一个名为 text/xml 的参数添加到请求中。在这种情况下,我收到来自服务器的错误响应,提示“抛出异常:prolog 中不允许内容”。这告诉我服务器正在尝试处理参数的键 (text/xml=) 以及值。
当我在 RAW 正文字段中使用 chrome 中的 REST 控制台和所需的 xml 请求时,一切都按预期工作。
关于如何使用 Rest Sharp 进行这项工作的任何想法?
编辑:看起来我需要使用 request.AddFile("name", bytes_to_add, "file_name")。但是,当我尝试这样做时,出现异常(“System.InvalidOperationException:在写入开始后无法设置此属性。”),这看起来像是RestSharp 的一个从未解决的问题。我可能只需要使用 HttpWebRequest 库发出请求。