c# – RestSharp可以在不使用多部分内容类型的情况下发送二进制数据吗?

我一直在使用AddParameter在我的HTTP请求中包含XML主体:

request.AddParameter(contentType, body, ParameterType.RequestBody);

但是,这似乎不适用于非弦体. (RestSharp的Http.RequestBody由于某种原因是一个字符串.)我尝试使用AddFile(),但我找不到任何方法来避免将“文件”编码为multipart / form,即使我只提供了一个对象.

我并不反对解决这个问题的反思,但我希望避免修改源只是为了在HTTP请求中发送任意数据.

编辑:关于我要发送的请求,它们看起来像这样:

PUT ... HTTP/1.1
Accept: application/vnd...
Authorization: Basic ...
Content-Type: application/octet-stream

<arbitrary bytes>

理想情况下,我想使用相同的调用来发送不同的内容类型:

PUT ... HTTP/1.1
Accept: application/vnd...
Authorization: Basic ...
Content-Type: application/vnd...

<other arbitrary bytes>
最佳答案
在最新版本中进行了一些修改,允许在不创建多部分表单请求的情况下使用单个文件.这是一个显示和示例的要点:

https://gist.github.com/hallem/5faaa6bebde50641e928

转载注明原文:c# – RestSharp可以在不使用多部分内容类型的情况下发送二进制数据吗? - 代码日志