我知道为什么不建议让Http获取身体,请参阅: HTTP GET with request body
但我有一个第三方服务,它本质上是一个MongoDB PAAS,它允许您通过发送带有正文的HTTP GET进行查询(filter子句在HTTP正文中)。它不支持通过HTTP POST进行相同的查询。带有HttpClient的主体的HTTP GET目前提供了ProtocolViolationException,它抱怨错误的动词。
根据我的拙见,HttpClient应该阻止非标准用法(类似于通过TryAddWithoutValidation
添加某些标题)但不能使它们完全不可能。毕竟世界并不完美。 HttpClient现在只是挡住我的方式,PAAS提供商肯定不会改变他们的API以适应我的http客户端。
我在这里阅读了很多相关的问题,很多答案都在谈论为什么 BAD 要与身体进行HTTP GET,你永远不应该这样做。但是,我的情况无法控制。
如何使用System.Net.Http.HttpClient
处理此问题?