我需要为REST服务执行http GET并在GET
中包含一个正文。不幸的是,在连接上设置#setDoOutput( true )
会强制POST
。无论如何要发送GET
身体?
编辑:我正在尝试发送的正文是JSON。
答案 0 :(得分:1)
无法使用HttpURLConnection
发送HTTP GET的内容。通过在setDoOutput(true)
上设置HttpURLConnection
,动词将被强制为POST。
我正在使用的REST API文档描述了相关端点的JSON主体,但接受了URL参数。
答案 1 :(得分:0)
可能无法通过HttpUrlConnection实现,虽然您可以通过其他API实现,但如果您必须这样做,那么您在架构中出错的可能性很高,因为它违背了基本规则使用GET Http方法和不同的问题可能会出现如下: 如果您尝试利用缓存,Proxies将不会查看GET正文以查看参数是否会对响应产生影响。 它不是基于标准实践的良好实现,它可能会导致某些浏览器/服务出现问题。
请查看此问题以获取更多信息。
希望这有帮助。
问候!